In computing, floating point operations per second (FLOPS, flops or flop/s) is a measure of computer performance, useful in fields of scientific computations that require floating-point calculations. For such cases, it is a more accurate measure than measuring instructions per second.
Floating-point arithmetic is needed for very large or very small real numbers, or computations that require a large dynamic range. Floating-point representation is similar to scientific notation, except everything is carried out in base two, rather than base ten. The encoding scheme stores the sign, the exponent (in base two for Cray and VAX, base two or ten for IEEE floating point formats, and base 16 for IBM Floating Point Architecture) and the significand (number after the radix point). While several similar formats are in use, the most common is ANSI/IEEE Std. 754-1985. This standard defines the format for 32-bit numbers called single precision, as well as 64-bit numbers called double precision and longer numbers called extended precision (used for intermediate results). Floating-point representations can support a much wider range of values than fixed-point, with the ability to represent very small numbers and very large numbers.
The exponentiation inherent in floating-point computation assures a much larger dynamic range – the largest and smallest numbers that can be represented – which is especially important when processing data sets where some of the data may have extremely large range of numerical values or where the range may be unpredictable. As such, floating-point processors are ideally suited for computationally intensive applications.
FLOPS and MIPS are units of measure for the numerical computing performance of a computer. Floating-point operations are typically used in fields such as scientific computational research. The unit MIPS measures integer performance of a computer. Examples of integer operation include data movement (A to B) or value testing (If A = B, then C). MIPS as a performance benchmark is adequate when a computer is used in database queries, word processing, spreadsheets, or to run multiple virtual operating systems. Frank H. McMahon, of the Lawrence Livermore National Laboratory, invented the terms FLOPS and MFLOPS (megaFLOPS) so that he could compare the supercomputers of the day by the number of floating-point calculations they performed per second. This was much better than using the prevalent MIPS to compare computers as this statistic usually had little bearing on the arithmetic capability of the machine.
FLOPS on an HPC-system can be calculated using this equation:
This can be simplified to the most common case: a computer that has exactly 1 CPU:
FLOPS can be recorded in different measures of precision, for example, the TOP500 supercomputer list ranks computers by 64 bit (double-precision floating-point format) operations per second, abbreviated to FP64. Similar measures are available for 32-bit (FP32) and 16-bit (FP16) operations.
|Intel 80486||x87 (32-bit)||?||0.128||?|
|Intel P6 Pentium III||SSE (64-bit)||?||2||?|
|Intel NetBurst Pentium 4 (Willamette, Northwood)||SSE2 (64-bit)||2||4||?|
|Intel P6 Pentium M||SSE2 (64-bit)||1||2||?|
|Intel Atom (Bonnell, Saltwell, Silvermont and Goldmont)||SSE3 (128-bit)||2||4||?|
|Intel Sandy Bridge (Sandy Bridge, Ivy Bridge)||AVX (256-bit)||8||16||0|
||AVX2 & FMA (256-bit)||16||32||0|
|Intel Xeon Phi (Knights Corner)||IMCI (512-bit)||16||32||0|
||AVX-512 & FMA (512-bit)||32||64||0|
|AMD Bobcat||AMD64 (64-bit)||2||4||0|
|AMD K10||SSE4/4a (128-bit)||4||8||0|
|AMD Bulldozer (Piledriver, Steamroller, Excavator)||4||8||0|
|AVX2 & FMA (128-bit, 256-bit decoding)||8||16||0|
|AVX2 & FMA (256-bit)||16||32||0|
|ARM Cortex-A7, A9, A15||ARMv7||1||8||0|
|ARM Cortex-A32, A35, A53, A55, A72, A73, A75||ARMv8||2||8||0|
|ARM Cortex-A76, A77, A78||ARMv8||8||16||0|
|Qualcomm Kryo (1xx - 3xx)||ARMv8||2||8||0|
|Qualcomm Kryo (4xx - 5xx)||ARMv8||8||16||0|
|Samsung Exynos M1 and M2||ARMv8||2||8||0|
|Samsung Exynos M3 and M4||ARMv8||3||12||0|
|IBM PowerPC A2 (Blue Gene/Q)||?||8||8 (as FP64)||0|
|Nvidia Curie (GeForce 6 series and GeForce 7 series)||PTX||?||8||?|
|Nvidia Tesla 2.0 (GeForce GTX 260–295)||PTX||?||2||?|
|Nvidia Fermi (only GeForce GTX 465–480, 560 Ti, 570–590)||PTX||1/4 (locked by driver, 1 in hardware)||2||0|
|Nvidia Fermi (only Quadro 600–2000)||PTX||1/8||2||0|
|Nvidia Fermi (only Quadro 4000–7000, Tesla)||PTX||1||2||0|
|Nvidia Kepler (GeForce (except Titan and Titan Black), Quadro (except K6000), Tesla K10)||PTX||1/12 (for GK110: locked by driver, 2/3 in hardware)||2||0|
|Nvidia Kepler (GeForce GTX Titan and Titan Black, Quadro K6000, Tesla (except K10))||PTX||2/3||2||0|
|Nvidia Pascal (only Quadro GP100 and Tesla P100)||PTX||1||2||4|
|Nvidia Volta||PTX||1||2 (FP32) + 2 (INT32)||16|
|Nvidia Turing (only GeForce 16XX)||PTX||1/16||2 (FP32) + 2 (INT32)||4|
|Nvidia Turing (all except GeForce 16XX)||PTX||1/16||2 (FP32) + 2 (INT32)||16|
|Nvidia Ampere (only Tesla A100/A30)||PTX||2||2 (FP32) + 2 (INT32)||32|
|Nvidia Ampere (all GeForce and Quadro, Tesla A40/A10)||PTX||1/32||2 (FP32) + 0 (INT32) or 1 (FP32) + 1 (INT32)||8|
|AMD TeraScale 1 (Radeon HD 4000 series)||TeraScale 1||0.4||2||?|
|AMD TeraScale 2 (Radeon HD 5000 series)||TeraScale 2||1||2||?|
|AMD TeraScale 3 (Radeon HD 6000 series)||TeraScale 3||1||4||?|
|AMD GCN (only Radeon Pro W 8100–9100)||GCN||1||2||?|
|AMD GCN (all except Radeon Pro W 8100–9100, Vega 10–20)||GCN||1/8||2||4|
|AMD GCN Vega 10||GCN||1/8||2||4|
|AMD GCN Vega 20 (only Radeon VII)||GCN||1/2 (locked by driver, 1 in hardware)||2||4|
|AMD GCN Vega 20 (only Radeon Instinct MI50 / MI60 and Radeon Pro VII)||GCN||1||2||4|
|AMD CDNA||CDNA||1||4 (Tensor)||16|
|AMD CDNA 2||CDNA 2||4 (Tensor)||4 (Tensor)||16|
|Intel Xe-LP (Iris Xe MAX)||Xe||1/2?||2||4|
|Intel Xe-HPG (Arc Alchemist)||Xe||0||2||16|
|Intel Xe-HPC (Ponte Vecchio)||Xe||2||2||32|
|Qualcomm Adreno 5x0||Adreno 5xx||1||2||4|
|Qualcomm Adreno 6x0||Adreno 6xx||1||2||4|
|Graphcore Colossus GC2||?||0||16||64|
|ENIAC @ 100 kHz with 385 Flops|
|48-bit processor @ 208 kHz in CDC 1604 in 1960|
|60-bit processor @ 10 MHz in CDC6600 in 1964||0.3 (FP60)|
|60-bit processor @ 10 MHz in CDC7600 in 1967||1.0 (FP60)|
|Cray-1 @ 80 MHz in 1976||2|
|CDC Cyber 205 @ 50 MHz in 1981||FORTRAN compiler
(ANSI 77 with vector extensions)
In June 1997, Intel's ASCI Red was the world's first computer to achieve one teraFLOPS and beyond. Sandia director Bill Camp said that ASCI Red had the best reliability of any supercomputer ever built, and "was supercomputing's high-water mark in longevity, price, and performance".
NEC's SX-9 supercomputer was the world's first vector processor to exceed 100 gigaFLOPS per single core.
In June 2006, a new computer was announced by Japanese research institute RIKEN, the MDGRAPE-3. The computer's performance tops out at one petaFLOPS, almost two times faster than the Blue Gene/L, but MDGRAPE-3 is not a general purpose computer, which is why it does not appear in the Top500.org list. It has special-purpose pipelines for simulating molecular dynamics.
By 2007, Intel Corporation unveiled the experimental multi-core POLARIS chip, which achieves 1 teraFLOPS at 3.13 GHz. The 80-core chip can raise this result to 2 teraFLOPS at 6.26 GHz, although the thermal dissipation at this frequency exceeds 190 watts.
In June 2007, Top500.org reported the fastest computer in the world to be the IBM Blue Gene/L supercomputer, measuring a peak of 596 teraFLOPS. The Cray XT4 hit second place with 101.7 teraFLOPS.
On June 26, 2007, IBM announced the second generation of its top supercomputer, dubbed Blue Gene/P and designed to continuously operate at speeds exceeding one petaFLOPS, faster than the Blue Gene/L. When configured to do so, it can reach speeds in excess of three petaFLOPS.
On October 25, 2007, NEC Corporation of Japan issued a press release announcing its SX series model SX-9, claiming it to be the world's fastest vector supercomputer. The SX-9 features the first CPU capable of a peak vector performance of 102.4 gigaFLOPS per single core.
On February 4, 2008, the NSF and the University of Texas at Austin opened full scale research runs on an AMD, Sun supercomputer named Ranger, the most powerful supercomputing system in the world for open science research, which operates at sustained speed of 0.5 petaFLOPS.
On May 25, 2008, an American supercomputer built by IBM, named 'Roadrunner', reached the computing milestone of one petaFLOPS. It headed the June 2008 and November 2008 TOP500 list of the most powerful supercomputers (excluding grid computers). The computer is located at Los Alamos National Laboratory in New Mexico. The computer's name refers to the New Mexico state bird, the greater roadrunner (Geococcyx californianus).
In June 2008, AMD released ATI Radeon HD 4800 series, which are reported to be the first GPUs to achieve one teraFLOPS. On August 12, 2008, AMD released the ATI Radeon HD 4870X2 graphics card with two Radeon R770 GPUs totaling 2.4 teraFLOPS.
In November 2008, an upgrade to the Cray Jaguar supercomputer at the Department of Energy's (DOE's) Oak Ridge National Laboratory (ORNL) raised the system's computing power to a peak 1.64 petaFLOPS, making Jaguar the world's first petaFLOPS system dedicated to open research. In early 2009 the supercomputer was named after a mythical creature, Kraken. Kraken was declared the world's fastest university-managed supercomputer and sixth fastest overall in the 2009 TOP500 list. In 2010 Kraken was upgraded and can operate faster and is more powerful.
In 2009, the Cray Jaguar performed at 1.75 petaFLOPS, beating the IBM Roadrunner for the number one spot on the TOP500 list.
In October 2010, China unveiled the Tianhe-1, a supercomputer that operates at a peak computing rate of 2.5 petaFLOPS.
As of 2010[update] the fastest PC processor reached 109 gigaFLOPS (Intel Core i7 980 XE) in double precision calculations. GPUs are considerably more powerful. For example, Nvidia Tesla C2050 GPU computing processors perform around 515 gigaFLOPS in double precision calculations, and the AMD FireStream 9270 peaks at 240 gigaFLOPS.
In November 2011, it was announced that Japan had achieved 10.51 petaFLOPS with its K computer. It has 88,128 SPARC64 VIIIfx processors in 864 racks, with theoretical performance of 11.28 petaFLOPS. It is named after the Japanese word "kei", which stands for 10 quadrillion, corresponding to the target speed of 10 petaFLOPS.
On November 15, 2011, Intel demonstrated a single x86-based processor, code-named "Knights Corner", sustaining more than a teraFLOPS on a wide range of DGEMM operations. Intel emphasized during the demonstration that this was a sustained teraFLOPS (not "raw teraFLOPS" used by others to get higher but less meaningful numbers), and that it was the first general purpose processor to ever cross a teraFLOPS.
On June 18, 2012, IBM's Sequoia supercomputer system, based at the U.S. Lawrence Livermore National Laboratory (LLNL), reached 16 petaFLOPS, setting the world record and claiming first place in the latest TOP500 list.
On November 12, 2012, the TOP500 list certified Titan as the world's fastest supercomputer per the LINPACK benchmark, at 17.59 petaFLOPS. It was developed by Cray Inc. at the Oak Ridge National Laboratory and combines AMD Opteron processors with "Kepler" NVIDIA Tesla graphic processing unit (GPU) technologies.
On June 10, 2013, China's Tianhe-2 was ranked the world's fastest with 33.86 petaFLOPS.
On June 20, 2016, China's Sunway TaihuLight was ranked the world's fastest with 93 petaFLOPS on the LINPACK benchmark (out of 125 peak petaFLOPS). The system, which is almost exclusively based on technology developed in China, is installed at the National Supercomputing Center in Wuxi, and represents more performance than the next five most powerful systems on the TOP500 list combined.
In June 2019, Summit, an IBM-built supercomputer now running at the Department of Energy's (DOE) Oak Ridge National Laboratory (ORNL), captured the number one spot with a performance of 148.6 petaFLOPS on High Performance Linpack (HPL), the benchmark used to rank the TOP500 list. Summit has 4,356 nodes, each one equipped with two 22-core Power9 CPUs, and six NVIDIA Tesla V100 GPUs.
Distributed computing uses the Internet to link personal computers to achieve more FLOPS:
|Date||Approximate USD per GFLOPS||Platform providing the lowest cost per GFLOPS||Comments|
|1945||$130 trillion||$2 quadrillion||ENIAC: $487,000 in 1945 and $7,195,000 in 2019||$487,000 / 0.0000000385 GFLOPS|
|1961||$20 billion||$196 billion||A basic installation of IBM 7030 Stretch had a cost at the time of US$7.78 million each.||The IBM 7030 Stretch performs one floating-point multiply every 2.4 microseconds.|
|1984||$20,000,000||$600,000,000||Cray X-MP/48||$15,000,000 / 0.8 GFLOPS|
|1997||$30,000||$55,000||Two 16-processor Beowulf clusters with Pentium Pro microprocessors|
|April 2000||$1,000||$2,000||Bunyip Beowulf cluster||Bunyip was the first sub-US$1/MFLOPS computing technology. It won the Gordon Bell Prize in 2000.|
|May 2000||$640||$1,000||KLAT2||KLAT2 was the first computing technology which scaled to large applications while staying under US$1/MFLOPS.|
|August 2003||$90||$100||KASY0||KASY0 was the first sub-US$100/GFLOPS computing technology.|
|August 2007||$50||$70||Microwulf||As of August 2007, this 26 GFLOPS "personal" Beowulf cluster can be built for $1256.|
|March 2011||$1.80||$2||HPU4Science||This $30,000 cluster was built using only commercially available "gamer" grade hardware.|
|August 2012||$0.75||$1||Quad AMD Radeon 7970 System||A quad AMD Radeon 7970 desktop computer reaching 16 TFLOPS of single-precision, 4 TFLOPS of double-precision computing performance. Total system cost was $3000; built using only commercially available hardware.|
|June 2013||$0.22||$0.3||Sony PlayStation 4||The Sony PlayStation 4 is listed as having a peak performance of 1.84 TFLOPS, at a price of $400|
|November 2013||$0.16||$0.2||AMD Sempron 145 & GeForce GTX 760 system||Built using commercially available parts, a system using one AMD Sempron 145 and three Nvidia GeForce GTX 760 reaches a total of 6.771 TFLOPS for a total cost of US$1,090.66.|
|December 2013||$0.12||$0.15||Pentium G550 & Radeon R9 290 system||Built using commercially available parts. Intel Pentium G550 and AMD Radeon R9 290 tops out at 4.848 TFLOPS grand total of US$681.84.|
|January 2015||$0.08||$0.1||Celeron G1830 & Radeon R9 295X2 system||Built using commercially available parts. Intel Celeron G1830 and AMD Radeon R9 295X2 tops out at over 11.5 TFLOPS at a grand total of US$902.57.|
|June 2017||$0.06||$0.07||AMD Ryzen 7 1700 & AMD Radeon Vega Frontier Edition system||Built using commercially available parts. AMD Ryzen 7 1700 CPU combined with AMD Radeon Vega FE cards in CrossFire tops out at over 50 TFLOPS at just under US$3,000 for the complete system.|
|October 2017||$0.03||$0.04||Intel Celeron G3930 & AMD RX Vega 64 system||Built using commercially available parts. Three AMD RX Vega 64 graphics cards provide just over 75 TFLOPS half precision (38 TFLOPS SP or 2.6 TFLOPS DP when combined with the CPU) at ~$2,050 for the complete system.|
|November 2020||$0.03||$0.03||AMD Ryzen 3600 & 3× NVIDIA RTX 3080 system||AMD Ryzen 3600 @ 484 GFLOPS & $199.99
3× NVIDIA RTX 3080 @ 29,770 GFLOPS each & $699.99
Total system GFLOPS = 89,794 / TFLOPS= 89.2794
Total system cost incl. realistic but low cost parts; matched with other example = $2839
US$/GFLOP = $0.0314
|November 2020||$0.04||$0.04||PlayStation 5||The Sony PlayStation 5 digital edition is listed as having a peak performance of 10.28 TFLOPS (20.58 TFLOPS at half precision) at a retail price of $399.|
|November 2020||$0.04||$0.04||Xbox Series X||Microsoft's Xbox Series X is listed as having a peak performance of 12.15 TFLOPS (24.30 TFLOPS at half precision) at a retail price of $499.|
|September 2022||$0.02||$0.02||RTX 4090||Nvidia's RTX 4090 is listed as having a peak performance of 82.6 TFLOPS (1.32 PFLOPS at 8-bit precision) at a retail price of $1599.|
|May 2023||$0.01||$0.01||Radeon RX 7600||AMD's RX 7600 is listed as having a peak performance of 21.5 TFLOPS at a retail price of $269.|
((cite web)): CS1 maint: url-status (link)
Any researcher at a U.S. institution can submit a proposal to request an allocation of cycles on the system.