Instructions per second
Template:Short description Template:Use dmy dates
Instructions per second (IPS) is a measure of a computer's processor speed. For complex instruction set computers (CISCs), different instructions take different amounts of time, so the value measured depends on the instruction mix; even for comparing processors in the same family the IPS measurement can be problematic. Many reported IPS values have represented "peak" execution rates on artificial instruction sequences with few branches and no cache contention, whereas realistic workloads typically lead to significantly lower IPS values. Memory hierarchy also greatly affects processor performance, an issue barely considered in IPS calculations. Because of these problems, synthetic benchmarks such as Dhrystone are now generally used to estimate computer performance in commonly used applications, and raw IPS has fallen into disuse.
The term is commonly used in association with a metric prefix (k, M, G, T, P, or E) to form kilo instructions per second (kIPS), mega instructions per second (MIPS), giga instructions per second (GIPS) and so on. Formerly TIPS was used occasionally for "thousand IPS".
Computing
IPS can be calculated using this equation:<ref name="en.community.dell.com">Template:Cite web</ref>
- <math>\text{IPS} = \text{sockets} \times \frac{\text{cores}}{\text{chip}} \times \text{clock} \times \frac{\text{Is}}{\text{cycle}}</math>
However, the instructions/cycle measurement depends on the instruction sequence, the data and external factors.
Scaling units
For the most early 8-bit and 16-bit microprocessors, performance was measured in thousand instructions per second, or kilo instructions per second (kIPS).
The term "mega instructions per second" became useful in the late 1970s. The IBM System/370 model 158–3 and the VAX-11/780 were considered roughly equivalent at 1 MIPS.
Types of instruction
The speed of a given CPU depends on many factors, such as the type of instructions being executed, the execution order and the presence of branch instructions (problematic in CPU pipelines). CPU instruction rates are different from clock frequencies, usually reported in Hz, as each instruction may require several clock cycles to complete or the processor may be capable of executing multiple independent instructions simultaneously. MIPS can be useful when comparing performance between processors made with similar architecture (e.g. PIC microcontrollers), but they are difficult to compare between differing CPU architectures, especially between RISC and CISC architectures.<ref>Template:Cite web</ref> This led to the term "Meaningless Indicator of Processor Speed,"<ref>Template:Cite book</ref> or less commonly, "Meaningless Indices of Performance," <ref>Template:Cite magazine</ref> being popular amongst technical people by the mid-1980s.
The Gibson Mix (1959)
Before standard benchmarks were available, average speed rating of computers was based on calculations for a mix of instructions with the results given in kilo instructions per second (kIPS). Among the first attempts at defining a specific collections of instructions to time was the Gibson Mix, produced by Jack Clark Gibson of IBM for scientific applications in 1959.<ref>Template:Cite tech report</ref>
Gibson divided computer instructions into 12 classes, based on the IBM 704 architecture, adding a 13th class to account for indexing time. Weights were primarily based on analysis of seven scientific programs run on the 704, with a small contribution from some IBM 650 programs. The overall score was then the weighted sum of the average execution speed for instructions in each class.<ref>Template:Cite book</ref>
| The Gibson Mix | % |
|---|---|
| 1. Loads and Store | 31.2 |
| 2. Fixed Point Add and Subtract | 6.1 |
| 3. Compares | 3.8 |
| 4. Branches | 16.6 |
| 5. Floating Add and Subtract | 6.9 |
| 6. Floating Multiply | 3.8 |
| 7. Floating Divide | 1.5 |
| 8. Fixed Point Multiply | 0.6 |
| 9. Fixed Point Divide | 0.2 |
| 10. Shifting | 4.4 |
| 11. Logical, And, Or, etc. | 1.6 |
| 12. Instructions Not Using Registers | 5.3 |
| 13. Indexing | 18 |
| Total | 100 |
The Gibson Mix is a product of its era, when computer speeds were still measured in kIPS. Other ratings, such as the ADP mix which does not include floating point operations, were produced for commercial applications. These early ratings were nowhere as systemic as the later approaches, although the idea of creating a benchmark to resemble real-world applications (later called a "synthetic benchmark") would persist.
Two flavors of VAX MIPS
The VAX-11/780 was released in 1977. It was marketed as being able to execute the equivalent of 1 million System/370 instructions per second, the first minicomputer to achieve such a speed. VAX-11/780 would quickly become a unit of reference for MIPS measurements, in two separate benchmarks:
- The Whetstone benchmark of 1972 was modified in 1980 to combine three of its integer-operation speed measures into a "VAX MIPS". It originally included a mix of 42 statements written in ALGOL 60 (124 instructions on the KDF9 compiler), though by 1980 it had been rewritten in Fortran.
- The integer-and-string-heavy Dhrystone benchmark of 1984 inherited the idea of using VAX as a MIPS reference. Its results were reported in "DMIPS", for Dhrystone MIPS. Each Dhrystone MIPS was defined as the ability to run the Dhrystone main loop 1757 times per second, the score VAX-11/780 received on this benchmark.
Other instruction mixes
zMIPS refers to the MIPS measure used internally by IBM to rate its mainframe servers (zSeries, IBM System z9, and IBM System z10).
Weighted million operations per second (WMOPS) is a similar measurement, used for audio codecs.
Other factors that affect instructions per second
Effective MIPS speeds are highly dependent on the programming language used: some compilers generate highly-efficient code, others do not. The Whetstone Report has a table showing MWIPS speeds of PCs via early interpreters and compilers up to modern languages. The first PC compiler was for BASIC (1982) when a 4.8 MHz 8088/87 CPU obtained 0.01 MWIPS. Results on a 2.4 GHz Intel Core 2 Duo (1 CPU 2007) vary from 9.7 MWIPS using BASIC Interpreter, 59 MWIPS via BASIC Compiler, 347 MWIPS using 1987 Fortran, 1,534 MWIPS through HTML/Java to 2,403 MWIPS using a modern C/C++ compiler.
Timeline of instructions per second
CPU results
| Processor / System | Dhrystone MIPS or MIPS, and frequency | D instructions per clock cycle | D instructions per clock cycle per core | Year | Source |
|---|---|---|---|---|---|
| UNIVAC I | 0.002 MIPS at 2.25 MHz | 0.0008 | 0.0008 | 1951 |
<ref>Template:Cite book</ref> |
| IBM 7030 ("Stretch") | 1.200 MIPS at 3.30 MHz | 0.364 | 0.364 | 1961 | <ref>Template:Cite book</ref><ref>Template:Cite web</ref> |
| CDC 6600 | 10.00 MIPS at 10.00 MHz | 1 | 1 | 1965 | <ref>Template:Cite web</ref><ref>Template:Cite news</ref> |
| Intel 4004 | 0.092 MIPS at 0.740 MHz (Not Dhrystone) |
0.124 | 0.124 | 1971 | <ref>Template:Cite web</ref> |
| IBM System/370 Model 158 | 0.640 MIPS at 8.696 MHz | 0.0736 | 0.0736 | 1972 | <ref name=jcmit>Template:Cite web</ref> |
| Intel 8080 | 0.290 MIPS at 2.000 MHz (Not Dhrystone) |
0.145 | 0.145 | 1974 | <ref name=intel>Template:Cite web</ref> |
| Cray 1 | 160.0 MIPS at 80.00 MHz | 2 | 2 | 1975 | <ref>Template:Cite web</ref> |
| MOS Technology 6502 | 0.430 MIPS at 1.000 MHz | 0.43 | 0.43 | 1975 | <ref name=retro>Template:Cite web</ref> |
| MCP-1600 | 2.25 MIPS at 3.3 MHz, 4 ϕ | 0.75 | 0.75 | 1975 | <ref>Template:Cite book</ref> |
| Intel 8085 | 0.435 MIPS at 3.000 MHz (Not Dhrystone) |
0.145 | 0.145 | 1976 | <ref name=intel/> |
| Zilog Z80 | 0.580 MIPS at 4.000 MHz (Not Dhrystone) |
0.145 | 0.145 | 1976 | <ref name=retro/> |
| Signetics 8X300 | 4.000 MIPS at 8.000 MHz | 0.5 | 0.5 | 1976 | <ref>Template:Cite book</ref> |
| Motorola 6802 | 0.500 MIPS at 1.000 MHz | 0.5 | 0.5 | 1977 | <ref name="m6802">2 cycles per instruction [1] Template:Webarchive</ref> |
| IBM System/370 Model 158-3 | 0.730 MIPS at 8.696 MHz | 0.0839 | 0.0839 | 1977 | <ref name=jcmit/> |
| VAX-11/780 | 1.000 MIPS at 5.000 MHz | 0.2 | 0.2 | 1977 | <ref name=jcmit/> |
| Motorola 6809 | 0.420 MIPS at 1.000 MHz | 0.42 | 0.42 | 1978 | <ref name=retro/> |
| Intel 8086 | 0.330 MIPS at 5.000 MHz | 0.066 | 0.066 | 1978 | <ref name=intel/> |
| Fujitsu MB8843 | 2.000 MIPS at 2.000 MHz (Not Dhrystone) |
1 | 1 | 1978 | <ref name="mb884x">1 instruction per cycle [2]</ref> |
| Intel 8088 | 0.750 MIPS at 10.00 MHz | 0.075 | 0.075 | 1979 | <ref name=intel/> Template:Verification failed |
| Motorola 68000 | 1.400 MIPS at 8.000 MHz | 0.175 | 0.175 | 1979 | <ref name=retro/> |
| Zilog Z8001/Z8002 | 1.5 MIPS at 6 MHz | 0.25 | 0.25 | 1979 | <ref name="z8000">4 cycles per instruction [3] Template:Webarchive = 0.25 instructions per cycle</ref> |
| Intel 8035/8039/8048 | 0.400 MIPS at 6 MHz (Not Dhrystone) |
.066 | .066 | 1980 | <ref name=i8035>Template:Cite web</ref> |
| Fujitsu MB8843/MB8844 | 6 MIPS at 6 MHz (Not Dhrystone) |
1 | 1 | 1980 | <ref name=mb884x/> |
| Zilog Z80/Z80H | 1.16 MIPS at 8 MHz (Not Dhrystone) |
0.145 | 0.145 | 1981 | <ref name=retro/><ref>Template:Cite web</ref> |
| Motorola 6802 | 1.79 MIPS at 3.58 MHz | 0.5 | 0.5 | 1981 | <ref name=m6802/><ref name=m27>Template:Cite web</ref> |
| Zilog Z8001/Z8002B | 2.5 MIPS at 10 MHz | 0.25 | 0.25 | 1981 | <ref name=z8000/> |
| MOS Technology 6502 | 2.522 MIPS at 5.865 MHz | 0.43 | 0.43 | 1981 | <ref name=retro/><ref name=m27/> |
| Intel 80286 | 1.28 MIPS at 12 MHz | 0.107 | 0.107 | 1982 | <ref name=jcmit/> |
| Motorola 68010 | 2.407 MIPS at 12.5 MHz | 0.193 | 0.193 | 1982 | <ref name="m68010">10% faster [4] Template:Webarchive than 68000 (0.175 MIPS per MHz [5] Template:Webarchive)</ref> |
| NEC V20 | 4 MIPS at 8 MHz (Not Dhrystone) |
0.5 | 0.5 | 1982 | <ref name=v20>NEC V20/V30 Template:Webarchive: "250 nanoseconds per instruction @ 8 MHz" means some fastest 2-clock register-register instructions only</ref> |
| Texas Instruments TMS32010 | 5 MIPS at 20 MHz | 0.25 | 0.25 | 1983 | <ref>Template:Cite web</ref> |
| NEC V30 | 5 MIPS at 10 MHz (Not Dhrystone) |
0.5 | 0.5 | 1983 | <ref name=v20/> |
| Motorola 68020 | 4.848 MIPS at 16 MHz | 0.303 | 0.303 | 1984 | <ref name=mc68020>Template:Cite web</ref> |
| Hitachi HD63705 | 2 MIPS at 2 MHz | 1 | 1 | 1985 | <ref>Template:Cite web</ref><ref>Template:Cite web</ref> |
| Intel i386DX | 2.15 MIPS at 16 MHz | 0.134 | 0.134 | 1985 | <ref name=jcmit/> |
| Hitachi-Motorola 68HC000 | 3.5 MIPS at 20 MHz | 0.175 | 0.175 | 1985 | <ref name=retro/> |
| Intel 8751 | 1 MIPS at 12 MHz | 0.083 | 0.083 | 1985 | <ref>1 instruction per cycle [6] Template:Webarchive</ref> |
| WDC 65C816 / Ricoh 5A22 | 0.22 MIPS at 2.8 MHz | 0.08 | 0.08 | 1985 | |
| ARM2 | 4 MIPS at 8 MHz | 0.5 | 0.5 | 1986 | <ref>Template:Cite web</ref> |
| Stanford MIPS R2000 / R2000A | 8 / 9.8 MIPS at 12.5 MHz | 0.64 - 0.78 | 0.64 - 0.78 | 1986 / 1988 | <ref>Template:Cite web</ref><ref>Template:Cite web</ref> |
| Sun SPARC / Fujitsu MB86900 | 10 MIPS at 16.6 MHz | 0.6 | 0.6 | 1986 | <ref>Template:Cite book</ref> |
| Texas Instruments TMS34010 | 6 MIPS at 50 MHz | 0.12 | 0.12 | 1986 | <ref>Template:Cite magazine</ref> |
| NEC V70 | 6.6 MIPS at 20 MHz | 0.33 | 0.33 | 1987 | <ref name=ipsj>Template:Cite journal</ref> |
| Motorola 68030 | 18 MIPS at 50 MHz | 0.36 | 0.36 | 1987 | <ref name=mc68030>Template:Cite web</ref> |
| Gmicro/200 | 10 MIPS at 20 MHz | 0.5 | 0.5 | 1987 | <ref>Template:Cite web</ref> |
| Texas Instruments TMS320C20 | 12.5 MIPS at 25 MHz | 0.5 | 0.5 | 1987 | <ref name=racing>Template:Cite web</ref> |
| Analog Devices ADSP-2100 | 12.5 MIPS at 12.5 MHz | 1 | 1 | 1987 | <ref>Template:Cite web</ref> |
| Texas Instruments TMS320C25 | 25 MIPS at 50 MHz | 0.5 | 0.5 | 1987 | <ref name=racing/> |
| Intel i486DX | 8.7 MIPS at 25 MHz | 0.348 | 0.348 | 1989 | <ref name=jcmit/> |
| NEC V80 | 16.5 MIPS at 33 MHz | 0.5 | 0.5 | 1989 | <ref name=ipsj/> |
| Intel i860 | 25 MIPS at 25 MHz | 1 | 1 | 1989 | <ref name=i860>Template:Cite web</ref> |
| ARM3 | 12 MIPS at 25 MHz | 0.5 | 0.5 | 1989 | <ref>Template:Cite web</ref> |
| Motorola 68040 | 44 MIPS at 40 MHz | 1.1 | 1.1 | 1990 | <ref>Template:Cite web</ref> |
| AMD Am386 | 9 MIPS at 40 MHz | 0.225 | 0.225 | 1991 | <ref>Template:Cite magazine</ref> |
| Intel i486DX | 11.1 MIPS at 33 MHz | 0.336 | 0.336 | 1991 | <ref name=jcmit/> |
| Intel i860 | 50 MIPS at 50 MHz | 1 | 1 | 1991 | <ref name=i860/> |
| Intel i486DX2 | 25.6 MIPS at 66 MHz | 0.388 | 0.388 | 1992 | <ref name=jcmit/> |
| Alpha 21064 (EV4) | 86 MIPS at 150 MHz | 0.573 | 0.573 | 1992 | <ref name=jcmit/> |
| Alpha 21064 (EV4S/EV45) | 135 MIPS at 200 MHz | 0.675 | 0.675 | 1993 | <ref name=jcmit/><ref>Digital's 21064 Microprocessor, Digital Equipment CorporationTemplate:Dead linkTemplate:Cbignore (c1992) accessdate=2009-08-29</ref> |
| MIPS R4400 | 85 MIPS at 150 MHz | 0.567 | 0.567 | 1993 | <ref name=magic/> |
| Gmicro/500 | 132 MIPS at 66 MHz | 2 | 2 | 1993 | <ref>Template:Cite journal</ref> |
| IBM-Motorola PowerPC 601 | 157.7 MIPS at 80 MHz | 1.971 | 1.971 | 1993 | <ref>Template:Cite web</ref> |
| ARM7 | 40 MIPS at 45 MHz | 0.889 | 0.889 | 1994 | <ref>Template:Cite web</ref> |
| Intel DX4 | 70 MIPS at 100 MHz | 0.7 | 0.7 | 1994 | <ref name=intel/> |
| Motorola 68060 | 110 MIPS at 75 MHz | 1.33 | 1.33 | 1994 | |
| Intel Pentium | 188 MIPS at 100 MHz | 1.88 | 1.88 | 1994 | <ref name="autogenerated0">Template:Cite web</ref> |
| Microchip PIC16F | 5 MIPS at 20 MHz | 0.25 | 0.25 | 1995 | <ref>Template:Cite web</ref> |
| IBM-Motorola PowerPC 603e | 188 MIPS at 133 MHz | 1.414 | 1.414 | 1995 | <ref name=603e>Template:Cite web</ref> |
| ARM 7500FE | 35.9 MIPS at 40 MHz | 0.9 | 0.9 | 1996 | |
| IBM-Motorola PowerPC 603ev | 423 MIPS at 300 MHz | 1.41 | 1.41 | 1996 | <ref name=603e/> |
| Intel Pentium Pro | 541 MIPS at 200 MHz | 2.7 | 2.7 | 1996 | <ref>Template:Cite web</ref> |
| Hitachi SH-4 | 360 MIPS at 200 MHz | 1.8 | 1.8 | 1997 | <ref>Template:Cite web</ref><ref>Template:Cite web</ref> |
| IBM-Motorola PowerPC 750 | 525 MIPS at 233 MHz | 2.3 | 2.3 | 1997 | |
| Zilog eZ80 | 6.6 MIPS at 20 MHz | 0.33 | 0.33 | 1999 | <ref>Template:Cite book</ref> |
| Intel Pentium III | 2,054 MIPS at 600 MHz | 3.4 | 3.4 | 1999 | <ref name="autogenerated0" /> |
| Freescale MPC8272 | 760 MIPS at 400 MHz | 1.9 | 1.9 | 2000 | <ref>Template:Cite web</ref> |
| AMD Athlon | 3,561 MIPS at 1.2 GHz | 3.0 | 3.0 | 2000 | |
| Silicon Recognition ZISC 78 | 8,600 MIPS at 33 MHz | 260.6 | 260.6 | 2000 | <ref>Template:Cite web</ref> |
| ARM11 | 515 MIPS at 412 MHz | 1.25 | 1.25 | 2002 | <ref name="anandtech.com">Template:Cite web</ref> |
| AMD Athlon XP 2500+ | 7,527 MIPS at 1.83 GHz | 4.1 | 4.1 | 2003 | <ref name="autogenerated0" /> |
| Intel Pentium 4 Extreme Edition | 9,726 MIPS at 3.2 GHz | 3.0 | 3.0 | 2003 | |
| Microchip PIC10F | 1 MIPS at 4 MHz | 0.25 | 0.25 | 2004 | <ref>Template:Cite web</ref><ref>Template:Cite web</ref> |
| ARM Cortex-M3 | 125 MIPS at 100 MHz | 1.25 | 1.25 | 2004 | <ref>Template:Cite web</ref> |
| Nios II | 190 MIPS at 165 MHz | 1.13 | 1.13 | 2004 | <ref>Template:Cite web</ref> |
| MIPS32 4KEc | 356 MIPS at 233 MHz | 1.5 | 1.5 | 2004 | <ref>Template:Cite web</ref> |
| VIA C7 | 1,799 MIPS at 1.3 GHz | 1.4 | 1.4 | 2005 | <ref>Template:Cite web</ref> |
| ARM Cortex-A8 | 2,000 MIPS at 1.0 GHz | 2.0 | 2.0 | 2005 | <ref name="forlinx-embedded">Template:Cite web</ref> |
| AMD Athlon FX-57 | 12,000 MIPS at 2.8 GHz | 4.3 | 4.3 | 2005 | |
| AMD Athlon 64 3800+ X2 (2-core) | 14,564 MIPS at 2.0 GHz | 7.3 | 3.6 | 2005 | <ref name="autogenerated1">Template:Cite web</ref> |
| PowerPC G4 MPC7448 | 3,910 MIPS at 1.7 GHz | 2.3 | 2.3 | 2005 | <ref>Template:Cite web</ref> |
| ARM Cortex-R4 | 450 MIPS at 270 MHz | 1.66 | 1.66 | 2006 | <ref>Template:Cite web</ref> |
| MIPS32 24K | 604 MIPS at 400 MHz | 1.51 | 1.51 | 2006 | <ref>Template:Cite web</ref> |
| PS3 Cell BE (PPE only) | 10,240 MIPS at 3.2 GHz | 3.2 | 3.2 | 2006 | |
| IBM Xenon CPU (3-core) | 19,200 MIPS at 3.2 GHz | 6.0 | 2.0 | 2005 | |
| AMD Athlon FX-60 (2-core) | 18,938 MIPS at 2.6 GHz | 7.3 | 3.6 | 2006 | <ref name="autogenerated1" /> |
| Intel Core 2 Extreme X6800 (2-core) | 27,079 MIPS at 2.93 GHz | 9.2 | 4.6 | 2006 | <ref name="autogenerated1" /> |
| Intel Core 2 Extreme QX6700 (4-core) | 49,161 MIPS at 2.66 GHz | 18.4 | 4.6 | 2006 | <ref name="tomshardware.com">Template:Cite web</ref> |
| MIPS64 20Kc | 1,370 MIPS at 600 MHz | 2.3 | 2.3 | 2007 | <ref>Template:Cite web</ref> |
| P.A. Semi PA6T-1682M | 8,800 MIPS at 1.8 GHz | 4.4 | 4.4 | 2007 | <ref>Template:Cite web</ref> |
| Qualcomm Scorpion (Cortex-A8-like) | 2,100 MIPS at 1 GHz | 2.1 | 2.1 | 2008 | <ref name="anandtech.com" /> |
| Intel Atom N270 | 3,846 MIPS at 1.6 GHz | 2.4 | 2.4 | 2008 | <ref>Template:Cite web</ref> |
| Intel Core 2 Extreme QX9770 (4-core) | 59,455 MIPS at 3.2 GHz | 18.6 | 4.6 | 2008 | <ref name="tomshardware.com"/> |
| Intel Core i7 920 (4-core) | 82,300 MIPS at 2.93 GHz | 28.089 | 7.022 | 2008 | <ref name="autogenerated2">Template:Cite web</ref> |
| ARM Cortex-M0 | 45 MIPS at 50 MHz | 0.9 | 0.9 | 2009 | <ref>Template:Cite web</ref> |
| ARM Cortex-A9 (2-core) | 7,500 MIPS at 1.5 GHz | 5.0 | 2.5 | 2009 | <ref>Template:Cite web</ref> |
| AMD Phenom II X4 940 Black Edition | 42,820 MIPS at 3.0 GHz | 14.3 | 3.5 | 2009 | <ref>Template:Cite web</ref> |
| AMD Phenom II X6 1100T | 78,440 MIPS at 3.3 GHz | 23.7 | 3.9 | 2010 | <ref name="autogenerated2" /> |
| Intel Core i7 Extreme Edition 980X (6-core) | 147,600 MIPS at 3.33 GHz | 44.7 | 7.46 | 2010 | <ref>Template:Cite web</ref> |
| ARM Cortex-A5 | 1,256 MIPS at 800 MHz | 1.57 | 1.57 | 2011 | <ref name="forlinx-embedded" /> |
| ARM Cortex-A7 | 2,850 MIPS at 1.5 GHz | 1.9 | 1.9 | 2011 | <ref name="anandtech.com" /> |
| Qualcomm Krait (Cortex-A15-like, 2-core) | 9,900 MIPS at 1.5 GHz | 6.6 | 3.3 | 2011 | <ref name="anandtech.com" /> |
| AMD E-350 (2-core) | 10,000 MIPS at 1.6 GHz | 6.25 | 3.125 | 2011 | <ref>Template:Cite web</ref> |
| Nvidia Tegra 3 (Quad core Cortex-A9) | 13,800 MIPS at 1.5 GHz | 9.2 | 2.5 | 2011 | |
| Samsung Exynos 5250 (Cortex-A15-like 2-core) | 14,000 MIPS at 2.0 GHz | 7.0 | 3.5 | 2011 | <ref>Template:Cite web</ref> |
| Intel Core i5-2500K (4-core) | 83,000 MIPS at 3.3 GHz | 25.152 | 6.288 | 2011 | <ref>Template:Cite web</ref> |
| Intel Core i7 875K | 92,100 MIPS at 2.93 GHz | 31.4 | 7.85 | 2011 | <ref name="autogenerated2"/> |
| AMD FX-8150 (8-core) | 90,749 MIPS at 3.6 GHz | 25.2 | 3.15 | 2011 | <ref name="cpu-world.com">Template:Cite web</ref> |
| Intel Core i7 2600K (4-core) | 117,160 MIPS at 3.4 GHz | 34.45 | 8.61 | 2011 | <ref>Template:Cite web</ref> |
| Intel Core i7-3960X (6-core) | 176,170 MIPS at 3.3 GHz | 53.38 | 8.89 | 2011 | <ref>Template:Cite web</ref> |
| AMD FX-8350 (8-core) | 97,125 MIPS at 4.2 GHz | 23.1 | 2.9 | 2012 | <ref name="cpu-world.com"/><ref name="versus.com">Template:Cite web</ref> |
| AMD FX-9590 (8-core) | 115,625 MIPS at 5.0 GHz | 23.1 | 2.9 | 2012 | <ref name="autogenerated2" /> |
| Intel Core i7 3770K (4-core) | 106,924 MIPS at 3.9 GHz | 27.4 | 6.9 | 2012 | <ref name="cpu-world.com"/> |
| Intel Core i7 4770K (4-core) | 133,740 MIPS at 3.9 GHz | 34.29 | 8.57 | 2013 | <ref name="cpu-world.com"/><ref name="versus.com"/><ref>Template:Cite web</ref> |
| Intel Core i7 5960X (8-core) | 298,190 MIPS at 3.5 GHz | 85.2 | 10.65 | 2014 | <ref>Template:Cite web</ref> |
| Intel Core i7 6950X (10-core) | 320,440 MIPS at 3.5 GHz | 91.55 | 9.16 | 2016 | <ref>Template:Cite web</ref> |
| ARM Cortex-A73 (4-core) | 71,120 MIPS at 2.8 GHz | 25.4 | 6.35 | 2016 | |
| ARM Cortex-A75 | Template:Dunno | Template:Dunno | 8.2-9.5 | 2017 | <ref name=":0">Template:Cite web</ref> |
| ARM Cortex-A76 | Template:Dunno | Template:Dunno | 10.7-12.4 | 2018 | <ref name=":0" /> |
| ARM Cortex-A53 | 2,300 MIPS at 1 GHz | 2.3 | 2.3 | 2012 | <ref name="elearning.unicampania.it">Template:Cite web</ref> |
| ARM Cortex-A35 | 2,100 MIPS at 1 GHz | 2.1 | 2.1 | 2015 | <ref name="elearning.unicampania.it"/> |
| ARM Cortex-A72 | 15,750 to 18,375 at 2.5 GHz | 6.3 to 7.35 | 6.3 to 7.35 | 2015 | <ref name="elearning.unicampania.it"/> |
| ARM Cortex-A57 | 10,250 to 11,750 at 2.5 GHz | 4.1 to 4.7 | 4.1 to 4.7 | 2012 | <ref name="elearning.unicampania.it"/> |
| Sitara AM64x ARM Cortex-A53 (2-core) | 5,992 MIPS at 1 GHz | 6 | 3 | 2021 | <ref>Template:Cite web</ref> |
| AMD Ryzen 7 1800X (8-core) | 304,510 MIPS at 3.7 GHz | 82.3 | 10.29 | 2017 | <ref>Template:Cite web</ref> |
| Intel Core i7-8086K (6-core) | 221,720 MIPS at 5.0 GHz | 44.34 | 7.39 | 2018 | <ref>Template:Cite web</ref> |
| Intel Core i9-9900K (8-core) | 412,090 MIPS at 4.7 GHz | 87.68 | 10.96 | 2018 | <ref name="HotHardware_Ryzen3950X" /> |
| AMD Ryzen 9 3950X (16-core) | 749,070 MIPS at 4.6 GHz | 162.84 | 10.18 | 2019 | <ref name="HotHardware_Ryzen3950X">Template:Cite web</ref> |
| AMD Ryzen Threadripper 3990X (64 core) | 2,356,230 MIPS at 4.35 GHz | 541.66 | 8.46 | 2020 | <ref>Template:Cite web</ref> |
| Intel Core i5-11600K (6-core) | 346,350 MIPS at 4.92 GHz | 57.72 | 11.73 | 2021 | <ref>Template:Cite web</ref> |
| Processor / System | Dhrystone MIPS / MIPS | D instructions per clock cycle | D instructions per clock cycle per core | Year | Source |
Multi-CPU cluster results
| Processor / System | Dhrystone MIPS or MIPS, and frequency | D instructions per clock cycle | D instructions per clock cycle per core | Year | Source |
|---|---|---|---|---|---|
| LINKS-1 Computer Graphics System (257-processor) | 642.5 MIPS at 10 MHz | 2.5 | 0.25 | 1982 | <ref>LINKS-1 Computer Graphics System: 257× Zilog Z8001 [7] Template:Webarchive at 10 MHz [8] Template:Webarchive (2.5 MIPS [9] Template:Webarchive) each</ref> |
| Sega System 16 (4-processor) | 16.33 MIPS at 10 MHz | 4.083 | 1.020 | 1985 | <ref>Sega System 16: Hitachi-Motorola 68000 @ 10 MHz (1.75 MIPS), NEC-Zilog Z80 @ 4 MHz (0.58 MIPS) [10] Template:Webarchive [11] Template:Webarchive, Intel 8751 @ 8 MHz [12] (8 MIPS [13] Template:Webarchive), Intel 8048 @ 6 MHz Template:Cite web (6 MIPS [14])</ref> |
| Namco System 21 (10-processor) | 73.927 MIPS at 25 MHz | 2.957 | 0.296 | 1988 | <ref>Namco System 21 hardware: 5× Texas Instruments TMS320C20 @ 25 MHz (62.5 MIPS [15] Template:Webarchive), 2× Motorola 68000 @ 12.288 MHz [16] Template:Webarchive (4.301 MIPS [17] Template:Webarchive), Motorola 68020 [18] @ 12.5 MHz (3.788 MIPS [19] Template:Webarchive), Hitachi HD63705 @ 2.048 MHz [20] (2.048 MIPS [21]), Motorola 6809 @ 3.072 MHz [22] (1.29 MIPS [23] )</ref> |
| Atari Hard Drivin' (7-processor) | 33.573 MIPS at 50 MHz | 0.671 | 0.0959 | 1989 | <ref>Atari Hard Drivin' hardware: [24] Template:Webarchive Motorola 68000 @ 7 MHz (1.225 MIPS [25] Template:Webarchive), Motorola 68010 @ 7 MHz (1.348 MIPS [26] Template:Webarchive), 3× Texas Instruments TMS34010 @ 50 MHz (18 MIPS [27]), Analog Devices ADSP-2100 @ 8 MHz (8 MIPS [28] Template:Webarchive), Texas Instruments TMS32010 @ 20 MHz (5 MIPS Template:Cite web)</ref> |
| NEC SX-3 (4-processor) | 680 MIPS at 400 MHz | 1.7 | 0.425 | 1989 | <ref>Template:Cite journal</ref> |
| Namco System 21 (Galaxian³) (96-processor) | 1,660.386 MIPS at 40 MHz | 41.51 | 0.432 | 1990 | <ref>Namco System 21 (Galaxian³) hardware: [29] 80× Texas Instruments TMS320C25 @ 40 MHz (1600 MIPS [30] Template:Webarchive), 5× Motorola 68020 @ 24.576 MHz (37.236 MIPS [31] Template:Webarchive) Motorola 68000 @ 12.288 MHz (2.15 MIPS [32] Template:Webarchive), 10× Motorola 68000 @ 12 MHz (21 MIPS [33] )</ref> |
| SGI Onyx RealityEngine2 (36-processor) | 2,640 MIPS at 150 MHz | 17.6 | 0.489 | 1993 | <ref>24× MIPS R4400 (2040 MIPS), [34] Template:Webarchive 12× Intel i860 (600 MIPS) Template:Cite web</ref> |
| Namco Magic Edge Hornet Simulator (36-processor) | 2,880 MIPS at 150 MHz | 19.2 | 0.533 | 1993 | <ref name=magic>Template:Cite web</ref> |
| Sega Naomi Multiboard (32-processor) | 6,400 MIPS at 200 MHz | 32 | 1 | 1999 | <ref>Sega Naomi Multiboard hardware: [35] Template:Webarchive [36] Template:Webarchive 16× Hitachi SH-4 at 200 MHz (5760 MIPS [37] Template:Webarchive), 16× ARM7 at 45 MHz (640 MIPS [38])</ref> |
| Raspberry Pi 2 (quad-core ARM Cortex-A7) | 4,744 MIPS at 1.0 GHz | 4.744 | 1.186 | 2014 | <ref>Template:Cite web</ref> |
| Processor / System | Dhrystone MIPS / MIPS | D instructions per clock cycle | D instructions per clock cycle per core | Year | Source |
See also
- TOP500
- Floating point operations per second (FLOPS)
- SUPS
- Benchmark (computing)
- BogoMips (measurement of CPU speed made by the Linux kernel)
- Instructions per cycle
- Cycles per instruction
- Dhrystone (benchmark) - DMIPS integer benchmark
- Whetstone (benchmark) - floating-point benchmark
- Million service units (MSU)
- Computer performance by orders of magnitude
- Performance per watt
- Data-rate units