Glossary term
FLOPS (Floating Point Operations Per Second)
What is FLOPS?
FLOPS, or floating-point operations per second, is a measure of computer performance that quantifies the number of floating-point calculations a system can perform in one second. It is a more accurate measure than instructions per second for workloads requiring high precision, such as scientific computation, financial analysis, and 3D graphics. FLOPS can be recorded at different levels of precision, such as 64-bit (double-precision, FP64), 32-bit (FP32), and 16-bit (FP16) operations.
The TOP500 supercomputer list, for instance, ranks systems based on their double-precision floating-point performance (FP64). In AI, FLOPS is used to estimate the computational complexity and efficiency of models, indicating the arithmetic operations needed for tasks such as training or inference.
Some common FLOPS units include:
- KiloFLOPS (kFLOPS): 10^3 FLOPS
- MegaFLOPS (MFLOPS): 10^6 FLOPS
- GigaFLOPS (GFLOPS): 10^9 FLOPS
- TeraFLOPS (TFLOPS): 10^12 FLOPS
- PetaFLOPS (PFLOPS): 10^15 FLOPS
- ExaFLOPS (EFLOPS): 10^18 FLOPS
- ZettaFLOPS (ZFLOPS): 10^21 FLOPS
- YottaFLOPS (YFLOPS): 10^24 FLOPS
How many FLOPS is a human "worth"?
George Hotz has proposed an informal "person" unit to compare AI compute against human intelligence, with a "person-year" measuring that capacity over time. This is a rough, unofficial way to make AI compute more intuitive, not a scientific measurement of the brain. The AI community, including figures like Andrej Karpathy, has debated the practicality and assumptions behind the "person" unit.
Comparisons between the compute used to train large AI models and a human lifetime can illustrate how differently AI and human computation scale. Such comparisons depend heavily on their assumptions and should not be treated as literal equivalences.
How are FLOPS calculated?
FLOPS are calculated by counting the number of floating-point operations (like multiplication, division, addition, subtraction) that can be performed each second. This measure is often used in the field of high-performance computing (HPC) and in assessing the computational requirements of AI models.
- Single-precision FLOPS: These are calculated using single-precision floating-point numbers, which use 32 bits.
- Double-precision FLOPS: These are calculated using double-precision floating-point numbers, which use 64 bits.
What is the difference between FLOPS and Gflops?
FLOPS (Floating Point Operations Per Second) and GFLOPS (GigaFLOPS) are metrics for computing performance, with GFLOPS representing one billion FLOPS. While FLOPS measures the number of floating-point calculations a computer can perform in one second, GFLOPS quantifies this in billions, making it a more practical unit for high-performance systems. For example, a computer with 1 GFLOPS can perform a billion calculations in one second, a task that would take a human nearly 32 years to complete at the rate of one calculation per second.
What is the significance of FLOPS in AI?
In the context of AI and deep learning, FLOPS is used to gauge the computational cost or complexity of a model or a specific operation within a model. It helps in understanding the computational resources required to train or run a particular AI model. For instance, a model with higher FLOPS would require more computational resources and might be slower, affecting throughput.
- Model complexity: FLOPS can give an estimate of the complexity of an AI model. More complex models usually have higher FLOPS.
- Training time: The number of FLOPS can also give an estimate of the time it would take to train the model.
- Inference time: FLOPS can help estimate the time it would take for the model to infer, or make predictions.
FLOPS is also a critical measure for supercomputers, used to express their top speed or performance capability. It's used to compare supercomputers based on the number of floating-point calculations they can perform.
However, it's important to note that FLOPS is not always a perfect measure of performance, especially for biological systems like the brain, where many operations are performed using shortcuts that traditional computers do not use.
How are FLOPS impacting AI development?
FLOPS is significantly impacting AI development by providing a quantifiable measure of computational requirements. It helps developers and researchers estimate the resources and time required for training and inference, thereby aiding in efficient resource allocation and planning.
- Resource allocation: FLOPS helps in efficient allocation of computational resources for AI model training and inference.
- Planning: Knowing the FLOPS of an AI model can aid in planning and scheduling of AI tasks.
- Performance benchmarking: FLOPS is often used as a performance benchmark for comparing different AI models or hardware.
- Energy efficiency: FLOPS can also be used to measure the energy efficiency of AI computations.
FAQs
What is FLOPS?
FLOPS stands for Floating Point Operations Per Second and is a standard measure of computer performance, especially in the field of scientific computations.
What is the plural form of FLOP?
FLOPS is the plural form of FLOP, indicating multiple floating-point operations performed per second.
Does FLOPS say anything about a system's storage capacity?
No. FLOPS measures computing performance—how many floating-point calculations a system can perform per second—not storage capacity, which refers to how much digital information a system can hold.
How does FLOPS differ from download speed?
Download speed measures data transfer rate over a network, while FLOPS measures computational speed in floating-point operations per second. They describe different aspects of a system.
What is SPEC Integer, and how does it relate to FLOPS?
SPEC Integer is a benchmark focused on integer calculations, whereas FLOPS measures floating-point operations—each captures a different aspect of computing performance.
What is the Linpack Benchmark?
Linpack is a standard benchmark used to measure a system's FLOPS capability, particularly its performance solving systems of linear equations. It underlies the TOP500 supercomputer rankings.
How does clock speed influence FLOPS?
Clock speed—the rate at which a processor executes instructions—is one factor driving FLOPS, since it determines how many operations a processor can complete per second; architecture and parallelism also play major roles.
What role does a GPU play in FLOPS?
GPUs can contribute significantly to a system's FLOPS rating because their parallel architecture is well-suited to performing many floating-point calculations simultaneously.
What was the IBM Roadrunner's significance for FLOPS?
The IBM Roadrunner, completed in 2008, was the first supercomputer to sustain over one petaflop, marking a milestone in high-performance computing.
More terms
Continue exploring the glossary.
Glossary term
What is Cobweb?
It's time to build
Collaborate with your team on reliable Generative AI features.
Want expert guidance? Book a 1:1 onboarding session from your dashboard.