Instructions per second

From Wikipedia, the free encyclopedia

Instructions per second (IPS) is a measure of a computer's processor speed. Many reported IPS values have represented "peak" execution rates on artificial instruction sequences with few branches, whereas realistic workloads typically lead to significantly lower IPS values. The performance of the memory hierarchy also greatly affects processor performance, an issue barely considered in MIPS calculations. Because of these problems, synthetic benchmarks such as SPECint 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 numeric value such as thousand instructions per second (kIPS), million instructions per second (MIPS), Giga instructions per second (GIPS), or Million Operations per Second (MOPS).

Thousand instructions per second

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). The most famous was the Gibson Mix, produced by Jack Clark Gibson of IBM for scientific applications. Other ratings were also produced for commercial applications. Computer Speeds From Instruction Mixes pre-1960 to 1971 has results for around 175 computers, providing scientific and commercial ratings. For IBM, the earliest Gibson Mix calculations shown are the 1954 IBM 650 at 0.06 kIPS and 1956 IBM 705 at 0.5 kIPS. The results are mainly for IBM and others known as the BUNCH — Burroughs, UNIVAC, NCR, CDC, and Honeywell.

A thousand instructions per second (kIPS) is rarely used, as most current microprocessors can execute at least a billion instructions per second. The thousand means 1024, not 1000.

kIPS is also a common joke name for 16 bit microprocessor designs developed in undergraduate computer engineering courses that use the text Computer Organization and Design by Patterson and Hennessy (ISBN 1-55860-428-6), which explains computer architecture concepts in terms of the MIPS architecture. Such architectures tend to be scaled down versions of the MIPS R2000 architecture.

Millions of instructions per second

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 at once. Additionally, the number of cycles required for instructions to complete is dependent upon the instruction being executed. MIPS can be useful when comparing performance between processors made from a similar architecture (e.g. Microchip branded microcontrollers). However, MIPS are difficult to compare between CPU architectures.[1]

For this reason, MIPS has become not a measure of instruction execution speed, but task performance speed compared to a reference. In the late 1970s, minicomputer performance was compared using VAX MIPS, where computers were measured on a task and their performance rated against the VAX 11/780 that was marketed as a 1 MIPS machine. (The measure was also known as the VAX Unit of Performance or VUP. Though orthographically incorrect, the s in VUPs is sometimes written in upper case.) This was chosen because the 11/780 was roughly equivalent in performance to an IBM System/370 model 158-3, which was commonly accepted in the computing industry as running at 1 MIPS.

Many minicomputer performance claims were based on the Fortran version of the Whetstone benchmark, giving Millions of Whetstone Instructions Per Second (MWIPS). The VAX 11/780 with FPA (1977) runs at 1.02 MWIPS.

Effective MIPS speeds are highly dependent on the programming language used. 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.

For the most early 8-bit and 16-bit microprocessors, performance was measured in thousand instructions per second (1 kIPS = 0.001 MIPS). The first general purpose microprocessor, the Intel i8080, ran at 0.64 MIPS. The Intel i8086 microprocessor, the first 16-bit microprocessor in the line of processors made by Intel a variant of which was used in IBM PCs, ran at 0.8 MIPS.[citation needed] Early 32-bit PCs (386) ran at about 3 MIPS.

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.

Timeline of instructions per second

Processor Dhrystone MIPS D IPS / clock cycles per second D IPS / clock cycles per second / Cores per die Year Source
UNIVAC I0.002 MIPS at 2.25 MHz0.00080.00081951

[2]

Intel 40040.092 MIPS at 740 kHz
(Not Dhrystone)
0.10.11971[3]
IBM System/370 model 158-31 MIPS at 8.69 MHz0.10.11972
Intel 80800.330 MIPS at 2 MHz
(Not Dhrystone)
0.1650.1651974
MOS Technology 65020.500 MIPS at 1 MHz
(Not Dhrystone)
0.50.51975
VAX-11/7800.500 MIPS at 5 MHz
1 Dhrystone MIPS
0.20.21977
Motorola 680000.700 MIPS at 8 MHz
(Not Dhrystone)
0.10.11979[4]
Intel 2862.66 MIPS at 12.5 MHz0.20.21982[5]
Motorola 6802010 MIPS at 33 MHz0.3030.3031984[6]
Intel 386DX9.9 MIPS at 33 MHz0.30.31985
ARM24 MIPS at 8 MHz0.50.51986
Motorola 6803018 MIPS at 50 MHz0.360.361987[7]
Motorola 6804044 MIPS at 40 MHz1.11.11990[8]
DEC Alpha 21064 EV4300 MIPS at 150 MHz2.72.71992[9]
Intel 486DX254 MIPS at 66 MHz0.80.81992
Motorola 68060110 MIPS at 75 MHz1.331.331994
Intel Pentium188 MIPS at 100 MHz1.881.881994[10]
Microchip PIC16F5 MIPS at 20 MHz0.250.251995[11]
Atmel megaAVR16 MIPS at 16 MHz111996[12]
ARM 7500FE35.9 MIPS at 40 MHz0.90.91996
Intel Pentium Pro541 MIPS at 200 MHz2.72.71996[13]
PowerPC 750525 MIPS at 233 MHz2.32.31997
Zilog eZ8080 MIPS at 50 MHz1.61.61999[14]
Intel Pentium III2,054 MIPS at 600 MHz3.43.41999[10]
Freescale MPC8272760 MIPS at 400 MHz1.91.92000[15] Integrated Communications Processors
AMD Athlon3,561 MIPS at 1.2 GHz3.03.02000
ARM11515 MIPS at 412 MHz1.251.252002[16]
Silicon Recognition ZISC 788,600 MIPS at 33 MHz260.60260.602000[17]
AMD Athlon XP 2500+7,527 MIPS at 1.83 GHz4.14.12003[10]
Pentium 4 Extreme Edition9,726 MIPS at 3.2 GHz3.03.02003
MIPS32 4KEc356 MIPS at 233 MHz1.51.52004[18]
Microchip PIC10F1 MIPS at 4 MHz0.250.252004[19][20]
ARM Cortex-M3125 MIPS at 100 MHz1.251.252004[21]
Nios II190 MIPS at 165 MHz1.131.132004[22]
ARM Cortex-A82,000 MIPS at 1.0 GHz2.02.02005[23]
VIA C71,799 MIPS at 1.3 GHz1.41.42005[24]
AMD Athlon FX-5712,000 MIPS at 2.8 GHz4.34.32005
AMD Athlon 64 3800+ X2 (Dual core)14,564 MIPS at 2.0 GHz7.33.62005[25]
Tegra 3 NVIDIA (Quad core Cortex-A9)13,800 MIPS at 1.5 GHz9.22.52011
Xbox360 IBM "Xenon" (Triple core)19,200 MIPS at 3.2 GHz6.02.02005
PS3 Cell BE (PPE only)10,240 MIPS at 3.2 GHz3.23.22006
AMD Athlon FX-60 (Dual core)18,938 MIPS at 2.6 GHz7.33.62006[25]
Intel Core 2 Extreme X6800 (Dual core)27,079 MIPS at 2.93 GHz9.24.62006[25]
Intel Core 2 Extreme QX6700 (Quad core)49,161 MIPS at 2.66 GHz18.44.62006[26]
MIPS32 24K604 MIPS at 400 MHz1.511.512006[27]
ARM Cortex-R4450 MIPS at 270 MHz1.661.662006[28]
MIPS64 20Kc1,370 MIPS at 600 MHz2.32.32007[29]
P.A. Semi PA6T-1682M8,800 MIPS at 1.8 GHz4.44.42007[30]
Intel Core 2 Extreme QX9770 (Quad core)59,455 MIPS at 3.2 GHz18.64.62008[31]
Intel Core i7 920 (Quad core)82,300 MIPS at 2.66 (Turbo 2.93) GHz30.97.72008[32]
Intel Atom N270 (Single core)3,846 MIPS at 1.6 GHz2.42.42008[33]
Qualcomm Scorpion (Cortex A8-like)2,100 MIPS at 1 GHz2.12.12008[16]
ARM Cortex-M045 MIPS at 50 MHz0.90.92009[34]
ARM Cortex-A9 (Dual core)7,500 MIPS at 1.5 GHz5.02.52009[35]
AMD Phenom II X4 940 Black Edition42,820 MIPS at 3.0 GHz14.33.52009[36]
AMD Phenom II X6 1100T78,440 MIPS at 3.3 GHz23.73.92010[32]
Samsung Exynos 5250 (Cortex-A15-like Dual core)14,000 MIPS at 2.0 GHz7.03.52011[37]
Intel Core i7 Extreme Edition 980X (Hex core)147,600 MIPS at 3.33 GHz44.77.462010[38]
Intel Core i7 2600K128,300 MIPS at 3.4 GHz37.79.432011[39]
Intel Core i7 875K92,100 MIPS at 2.93 GHz31.47.852011[40]
AMD E-350 (Dual core)10,000 MIPS at 1.6 GHz6.253.1252011[41]
AMD FX-8150 (Eight core)90,749-108,890 MIPS at 3.6 GHz30.23.782011[42][43]
ARM Cortex A51,256 MIPS at 800 MHz1.571.572011[23]
ARM Cortex A72,850 MIPS at 1.5 GHz1.91.92011[16]
Qualcomm Krait (Cortex A15-like, Dual core)9,900 MIPS at 1.5 GHz6.63.32011[16]
Intel Core i7 Extreme Edition 3960X (Hex core)177,730 MIPS at 3.33 GHz53.38.892011[44]
Intel Core i7 3630QM113,093 MIPS at 3.2 GHz35.38.832012[45]
AMD FX-835097,125 Dhrystone MIPS/7-Zip MIPS 23407 at 4.2 GHz23.12.92012[43][46]
Intel Core i7 3770k106,924 Dhrystone MIPS at 3.9 GHz27.46.92012[43]
Intel Core i7 4770kmax: 124,850-127,273 Dhrystone MIPS/7-zip MIPS 23101 at 3.9GHz32.08.02013[43][46][47]
AMD FX-95907-ZIP – 28860 MIPS2013

Historic data

See also

References

  1. Ted MacNeil. "Don't be Misled by MIPS". IBM magazine. 
  2. US Steel News. 15-20. Industrial Relations Department of The United States Steel Corporation of Delaware. 1950-1955. p. 29. 
  3. MCS4 > IntelP4004
  4. MC68000 Product Summary Page
  5. Intel 80286 Microprocessor Chip (c1982)]
  6. MC68020 Product Summary Page
  7. MC68030 Product Summary Page
  8. MC68040 Product Summary Page
  9. Digital's 21064 Microprocessor, Digital Equipment Corporation (c1992) accessdate=2009-08-29
  10. 10.0 10.1 10.2 Tomshardware Cpu chart 2004
  11. PIC16F84A
  12. Atmel Corporation - Atmel AVR 8- and 32-bit - megaAVR
  13. SiSoftware Zone
  14. "Zilog Sees New Lease of Life for Z80 in Internet Appliances". Computergram International. 1999. 
  15. Freescale Semiconductor - MPC8272 PowerQUICC II Processor Family
  16. 16.0 16.1 16.2 16.3 Anandtech ARM Cortex A7 architecture comparison
  17. http://www.datasheetarchive.com/ZISC78-datasheet.html
  18. PIC10F200
  19. Microchip Technology Debuts Industry’s First 6-Pin Microcontrollers: The World’s Smallest Microcontroller
  20. ARM Cortex-M3
  21. Nios II Performance Benchmarks
  22. 23.0 23.1 ARM Cortex-A Series Comparison
  23. mini-itx.com - epia px 10000 review
  24. 25.0 25.1 25.2 CPU Charts 2007 - Tom's Hardware
  25. Synthetics, Continued - Tom's Hardware : Intel's Core 2 Quadro Kentsfield: Four Cores on a Rampage
  26. MIPS32 24K
  27. Cortex-R4 Processor
  28. Design Reuse - needs free registration
  29. Merritt, Rick (5 February 2007). "Startup takes PowerPC to 25 W". EE Times. UBM Tech. Retrieved 20 November 2012. 
  30. Synthetic - Sandra CPU - Tom's Hardware : Intel Core 2 Extreme QX9770: Paper Tiger?
  31. 32.0 32.1 Tom's Hardware Cpu Charts 2010
  32. OC Workbench
  33. Cortex-M0 Processor
  34. EEE Journal
  35. XtremeSystems Member Synthetic - Sandra CPU
  36. Samsung Exynos 5250 Announcement
  37. Overclock3D - Sandra CPU
  38. Tom's Hardware - Benchmark Results: Synthetics
  39. Tom's Hardware - Desktop CPU Charts 2011: Sandra 2010 Pro ALU
  40. Tom's Hardware
  41. HardOCP Bulldozer Desktop Performance - Synthetic Benchmarks
  42. 43.0 43.1 43.2 43.3 http://www.cpu-world.com/benchmarks/browse/910_80,965_61,993_80,1035_96/?c_test=6&PROCESS=Show+Selected
  43. HardOCP - Synthetic Benchmarks
  44. - Notebookcheck
  45. 46.0 46.1 http://versus.com/en/amd-fx-8350-black-edition-vs-intel-core-i7-4770k
  46. http://www.notebookcheck.net/Intel-Core-i7-Desktop-4770K-Notebook-Processor.93553.0.html
This article is issued from Wikipedia. The text is available under the Creative Commons Attribution/Share Alike; additional terms may apply for the media files.