Instructions per second

From Wikipedia, the free encyclopedia
  (Redirected from Million instructions per second)
Jump to: navigation, search

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[edit]

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.[dubious ]

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[edit]

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[edit]

Processor Dhrystone MIPS / MIPS D IPS / clock cycles per second D IPS / clock cycles per second / Cores per die Year Source
UNIVAC I 0.002 MIPS at 2.25 MHz 0.0008 0.0008 1951

[2]

Intel 4004 0.092 MIPS at 740 kHz
(Not Dhrystone)
0.124 0.124 1971 [3]
IBM System/370 158 0.64 MIPS at 8.696 MHz 0.0736 0.0736 1972 [4]
Intel 8080 0.29 MIPS at 2 MHz 0.145 0.145 1974 [5]
MOS Technology 6502 0.43 MIPS at 1 MHz 0.43 0.43 1975 [6]
Intel 8080A 0.435 MIPS at 3 MHz 0.145 0.145 1976 [5]
Zilog Z80 0.58 MIPS at 4 MHz 0.145 0.145 1976 [6]
Motorola 6809 0.42 MIPS at 1 MHz 0.42 0.42 1977 [6]
IBM System/370 158-3 0.73 MIPS at 8.696 MHz 0.0839 0.0839 1977 [4]
Intel 8086 0.33 MIPS at 5 MHz 0.066 0.066 1978 [5]
Intel 8088 0.75 MIPS at 10 MHz 0.075 0.075 1979 [5]
VAX-11/780 1 MIPS at 5 MHz 0.2 0.2 1979 [4]
Motorola 68000 1.4 MIPS at 8 MHz 0.175 0.175 1979 [6]
Zilog Z80H 1.16 MIPS at 8 MHz 0.145 0.145 1981 [7][6]
MOS Technology 6502 2.522 MIPS at 5.865 MHz 0.43 0.43 1981 [8][6]
Intel 286 1.28 MIPS at 12 MHz 0.107 0.107 1982 [4]
Motorola 68000 2.188 MIPS at 12.5 MHz 0.175 0.175 1982 [6]
Motorola 68010 2.407 MIPS at 12.5 MHz 0.193 0.193 1982 [9]
NEC V20 4 MIPS at 8 MHz 0.5 0.5 1982 [10]
Texas Instruments TMS32010 5 MIPS at 20 MHz 0.25 0.25 1983 [11]
NEC V30 5 MIPS at 10 MHz 0.5 0.5 1983 [10]
Motorola 68010 3.209 MIPS at 16.67 MHz 0.193 0.193 1984 [9]
Motorola 68020 4.848 MIPS at 16 MHz 0.303 0.303 1984 [12]
Hitachi HD63705 2 MIPS at 2 MHz 1 1 1985 [13][14]
Intel i386DX 2.15 MIPS at 16 MHz 0.134 0.134 1985 [4]
Hitachi-Motorola 68HC000 3.5 MIPS at 20 MHz 0.175 0.175 1985 [6]
ARM2 4 MIPS at 8 MHz 0.5 0.5 1986
Texas Instruments TMS34010 6 MIPS at 50 MHz 0.12 0.12 1986 [15]
NEC V70 6.6 MIPS at 20 MHz 0.33 0.33 1987 [16]
Motorola 68030 9 MIPS at 25 MHz 0.36 0.36 1987 [17][18]
Texas Instruments TMS320C20 12.5 MIPS at 25 MHz 0.5 0.5 1987 [19]
Analog Devices ADSP-2100 12.5 MIPS at 12.5 MHz 1 1 1987 [20]
Texas Instruments TMS320C25 25 MIPS at 50 MHz 0.5 0.5 1987 [19]
Motorola 68020 10 MIPS at 33 MHz 0.303 0.303 1988 [12]
Motorola 68030 18 MIPS at 50 MHz 0.36 0.36 1988 [18]
Namco System 21 (10 cores) 73.927 MIPS at 25 MHz 2.957 0.296 1988 [21]
Intel i386DX 4.3 MIPS at 33 MHz 0.13 0.13 1989 [4]
Intel i486DX 8.7 MIPS at 25 MHz 0.348 0.348 1989 [4]
NEC V80 16.5 MIPS at 33 MHz 0.5 0.5 1989 [16]
Intel i860 25 MIPS at 25 MHz 1 1 1989 [22]
Atari Hard Drivin' (7 cores) 33.573 MIPS at 50 MHz 0.671 0.0959 1989 [23]
Motorola 68040 44 MIPS at 40 MHz 1.1 1.1 1990 [24]
Namco System 21 (Galaxian³) (96 cores) 1,660.386 MIPS at 40 MHz 41.51 0.432 1990 [25]
Intel i486DX 11.1 MIPS at 33 MHz 0.336 0.336 1991 [4]
Intel i860 50 MIPS at 50 MHz 1 1 1991 [22]
Intel i486DX2 25.6 MIPS at 66 MHz 0.388 0.388 1992 [4]
DEC Alpha 21064 EV4 86 MIPS at 150 MHz 0.573 0.573 1992 [4]
DEC Alpha 21064 EV4 135 MIPS at 200 MHz 0.675 0.675 1993 [4][26]
MIPS R4400 85 MIPS at 150 MHz 0.567 0.567 1993 [27]
IBM-Motorola PowerPC 601 157.7 MIPS at 80 MHz 1.971 1.971 1993 [28]
SGI Onyx RealityEngine2 (36 cores) 2,640 MIPS at 150 MHz 17.6 0.489 1993 [29]
Namco Magic Edge Hornet Simulator (36 cores) 2,880 MIPS at 150 MHz 19.2 0.533 1993 [27]
ARM7 40 MIPS at 45 MHz 0.889 0.889 1994 [30]
Intel DX4 70 MIPS at 100 MHz 0.7 0.7 1994 [5]
Motorola 68060 110 MIPS at 75 MHz 1.33 1.33 1994
Intel Pentium 188 MIPS at 100 MHz 1.88 1.88 1994 [31]
Microchip PIC16F 5 MIPS at 20 MHz 0.25 0.25 1995 [32]
IBM-Motorola PowerPC 603e 188 MIPS at 133 MHz 1.414 1.414 1995 [33]
Atmel megaAVR 16 MIPS at 16 MHz 1 1 1996 [34]
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 [33]
Intel Pentium Pro 541 MIPS at 200 MHz 2.7 2.7 1996 [35]
Hitachi SH-4 360 MIPS at 200 MHz 1.8 1.8 1997 [36][37]
IBM-Motorola PowerPC 750 525 MIPS at 233 MHz 2.3 2.3 1997
Zilog eZ80 80 MIPS at 50 MHz 1.6 1.6 1999 [38]
Intel Pentium III 2,054 MIPS at 600 MHz 3.4 3.4 1999 [31]
Sega Naomi Multiboard (32 cores) 6,400 MIPS at 200 MHz 32 1 1999 [39]
Freescale MPC8272 760 MIPS at 400 MHz 1.9 1.9 2000 [40]
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 [41]
ARM11 515 MIPS at 412 MHz 1.25 1.25 2002 [42]
NEC Earth Simulator (5120 cores) 350,000,000 MIPS at 35.86 GHz 9760.2 1.906 2002 [4]
AMD Athlon XP 2500+ 7,527 MIPS at 1.83 GHz 4.1 4.1 2003 [31]
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 [43][44]
ARM Cortex-M3 125 MIPS at 100 MHz 1.25 1.25 2004 [45]
Nios II 190 MIPS at 165 MHz 1.13 1.13 2004 [46]
MIPS32 4KEc 356 MIPS at 233 MHz 1.5 1.5 2004 [47]
VIA C7 1,799 MIPS at 1.3 GHz 1.4 1.4 2005 [48]
ARM Cortex-A8 2,000 MIPS at 1.0 GHz 2.0 2.0 2005 [49]
AMD Athlon FX-57 12,000 MIPS at 2.8 GHz 4.3 4.3 2005
AMD Athlon 64 3800+ X2 (Dual core) 14,564 MIPS at 2.0 GHz 7.3 3.6 2005 [50]
ARM Cortex-R4 450 MIPS at 270 MHz 1.66 1.66 2006 [51]
MIPS32 24K 604 MIPS at 400 MHz 1.51 1.51 2006 [52]
PS3 Cell BE (PPE only) 10,240 MIPS at 3.2 GHz 3.2 3.2 2006
Xbox360 IBM "Xenon" (Triple core) 19,200 MIPS at 3.2 GHz 6.0 2.0 2005
AMD Athlon FX-60 (Dual core) 18,938 MIPS at 2.6 GHz 7.3 3.6 2006 [50]
Intel Core 2 Extreme X6800 (Dual core) 27,079 MIPS at 2.93 GHz 9.2 4.6 2006 [50]
Intel Core 2 Extreme QX6700 (Quad core) 49,161 MIPS at 2.66 GHz 18.4 4.6 2006 [53]
MIPS64 20Kc 1,370 MIPS at 600 MHz 2.3 2.3 2007 [54]
P.A. Semi PA6T-1682M 8,800 MIPS at 1.8 GHz 4.4 4.4 2007 [55]
Qualcomm Scorpion (Cortex A8-like) 2,100 MIPS at 1 GHz 2.1 2.1 2008 [42]
Intel Atom N270 (Single core) 3,846 MIPS at 1.6 GHz 2.4 2.4 2008 [56]
Intel Core 2 Extreme QX9770 (Quad core) 59,455 MIPS at 3.2 GHz 18.6 4.6 2008 [57]
Intel Core i7 920 (Quad core) 82,300 MIPS at 2.93 GHz 28.089 7.022 2008 [58]
ARM Cortex-M0 45 MIPS at 50 MHz 0.9 0.9 2009 [59]
ARM Cortex-A9 (Dual core) 7,500 MIPS at 1.5 GHz 5.0 2.5 2009 [60]
AMD Phenom II X4 940 Black Edition 42,820 MIPS at 3.0 GHz 14.3 3.5 2009 [61]
AMD Phenom II X6 1100T 78,440 MIPS at 3.3 GHz 23.7 3.9 2010 [58]
Intel Core i7 Extreme Edition 980X (Hex core) 147,600 MIPS at 3.33 GHz 44.7 7.46 2010 [62]
ARM Cortex A5 1,256 MIPS at 800 MHz 1.57 1.57 2011 [49]
ARM Cortex A7 2,850 MIPS at 1.5 GHz 1.9 1.9 2011 [42]
Qualcomm Krait (Cortex A15-like, Dual core) 9,900 MIPS at 1.5 GHz 6.6 3.3 2011 [42]
AMD E-350 (Dual core) 10,000 MIPS at 1.6 GHz 6.25 3.125 2011 [63]
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 Dual core) 14,000 MIPS at 2.0 GHz 7.0 3.5 2011 [64]
AMD FX-8150 (Eight core) 108,890 MIPS at 3.6 GHz 30.2 3.78 2011 [65][66]
Intel Core i7 875K 92,100 MIPS at 2.93 GHz 31.4 7.85 2011 [67]
Intel Core i7 2600K 128,300 MIPS at 3.4 GHz 37.7 9.43 2011 [68]
Intel Core i7 Extreme Edition 3960X (Hex core) 177,730 MIPS at 3.33 GHz 53.3 8.89 2011 [69]
AMD FX-8350 97,125 MIPS at 4.2 GHz 23.1 2.9 2012 [66][70]
Intel Core i7 3770k 106,924 MIPS at 3.9 GHz 27.4 6.9 2012 [66]
Intel Core i7 3630QM 113,093 MIPS at 3.2 GHz 35.3 8.83 2012 [71]
Intel Core i7 4770k 127,273 MIPS at 3.9 GHz 32.0 8.0 2013 [66][70][72]

Historic data[edit]

See also[edit]

References[edit]

  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. ^ a b c d e f g h i j k l http://www.jcmit.com/cpu-performance.htm
  5. ^ a b c d e http://web.archive.org/web/20120424231244/http://www.depi.itch.edu.mx/apacheco/asm/Intel_cpus.htm
  6. ^ a b c d e f g h http://www.drolez.com/retro/
  7. ^ http://web.archive.org/web/20120219195401/http://www.cityofberwyn.com/simulation/gameHardware/G80ref1.20.txt
  8. ^ http://www.system16.com/hardware.php?id=735
  9. ^ a b 10% faster [1] than 68000 (0.175 MIPS per MHz [2])
  10. ^ a b NEC V20/V30: 250 nanoseconds per instruction @ 8 MHz [3]
  11. ^ http://www.ti.com/lit/ds/symlink/tms320ss16.pdf
  12. ^ a b MC68020 Product Summary Page
  13. ^ http://digital.hitachihyoron.com/pdf/1985/08/1985_08_05.pdf
  14. ^ http://www.datasheetarchive.com/dlmain/Datasheets-13/DSA-246134.pdf
  15. ^ http://books.google.co.uk/books?id=KzoEAAAAMBAJ&pg=PT22
  16. ^ a b http://ipsj.ixsq.nii.ac.jp/ej/?action=pages_view_main&active_action=repository_view_main_item_detail&item_id=59745&item_no=1&page_id=13&block_id=8
  17. ^ http://books.google.co.uk/books?id=KU7dCBpP7fsC&pg=PA130
  18. ^ a b MC68030 Product Summary Page
  19. ^ a b http://historyofracinggames.files.wordpress.com/2007/06/060-1987-drivers-eyes-1989-winning-run.pdf
  20. ^ http://pdf.datasheetcatalog.com/datasheet/analogdevices/ADSP-2100KG.pdf
  21. ^ Namco System 21 hardware: 5× Texas Instruments TMS320C20 @ 25 MHz (62.5 MIPS [4]), 2× Motorola 68000 @ 12.288 MHz [5] (4.301 MIPS [6]), Motorola 68020 [7] @ 12.5 MHz (3.788 MIPS [8]), Hitachi HD63705 @ 2.048 MHz [9] (2.048 MIPS [10]), Motorola 6809 @ 3.072 MHz [11] (1.29 MIPS [12])
  22. ^ a b http://alacron.com/index.php?src=gendocs&ref=Inteli860_basedBusBoardsFT_200_VME&category=news
  23. ^ Atari Hard Drivin' hardware: [13] Motorola 68000 @ 7 MHz (1.225 MIPS [14]), Motorola 68010 @ 7 MHz (1.348 MIPS [15]), 3× Texas Instruments TMS34010 @ 50 MHz (18 MIPS [16]), Analog Devices ADSP-2100 @ 8 MHz (8 MIPS [17]), Texas Instruments TMS32010 @ 20 MHz (5 MIPS [18])
  24. ^ MC68040 Product Summary Page
  25. ^ Namco System 21 (Galaxian³) hardware: [19] 80× Texas Instruments TMS320C25 @ 40 MHz (1600 MIPS [20]), 5× Motorola 68020 @ 24.576 MHz (37.236 MIPS [21]) Motorola 68000 @ 12.288 MHz (2.15 MIPS [22]), 10× Motorola 68000 @ 12 MHz (21 MIPS [23])
  26. ^ Digital's 21064 Microprocessor, Digital Equipment Corporation (c1992) accessdate=2009-08-29
  27. ^ a b http://www.system16.com/hardware.php?id=832
  28. ^ http://www.netlib.org/performance/html/dhrystone.data.col0.html
  29. ^ 24× MIPS R4400 (2040 MIPS), [24] 12× Intel i860 (600 MIPS) [25]
  30. ^ http://www.segatech.com/technical/saturnspecs/
  31. ^ a b c Tomshardware Cpu chart 2004
  32. ^ PIC16F84A
  33. ^ a b http://www.fermimn.gov.it/inform/materiali/evarchi/motorola/603e_fs.pdf
  34. ^ Atmel Corporation - Atmel AVR 8- and 32-bit - megaAVR
  35. ^ SiSoftware Zone
  36. ^ http://www.segatech.com/technical/cpu/
  37. ^ http://www.segatech.com/archives/january1998.html
  38. ^ "Zilog Sees New Lease of Life for Z80 in Internet Appliances". Computergram International. 1999. 
  39. ^ Sega Naomi Multiboard hardware: [26] [27] 16× Hitachi SH-4 at 200 MHz (5760 MIPS [28]), 16× ARM7 at 45 MHz (640 MIPS [29])
  40. ^ Freescale Semiconductor - MPC8272 PowerQUICC II Processor Family
  41. ^ http://www.datasheetarchive.com/ZISC78-datasheet.html
  42. ^ a b c d Anandtech ARM Cortex A7 architecture comparison
  43. ^ PIC10F200
  44. ^ Microchip Technology Debuts Industry’s First 6-Pin Microcontrollers: The World’s Smallest Microcontroller
  45. ^ ARM Cortex-M3
  46. ^ Nios II Performance Benchmarks
  47. ^ [30]
  48. ^ mini-itx.com - epia px 10000 review
  49. ^ a b ARM Cortex-A Series Comparison
  50. ^ a b c CPU Charts 2007 - Tom's Hardware
  51. ^ Cortex-R4 Processor
  52. ^ MIPS32 24K
  53. ^ Synthetics, Continued - Tom's Hardware : Intel's Core 2 Quadro Kentsfield: Four Cores on a Rampage
  54. ^ Design Reuse - needs free registration
  55. ^ Merritt, Rick (5 February 2007). "Startup takes PowerPC to 25 W". EE Times. UBM Tech. Retrieved 20 November 2012. 
  56. ^ OC Workbench
  57. ^ Synthetic - Sandra CPU - Tom's Hardware : Intel Core 2 Extreme QX9770: Paper Tiger?
  58. ^ a b Tom's Hardware Cpu Charts 2010
  59. ^ Cortex-M0 Processor
  60. ^ EEE Journal
  61. ^ XtremeSystems Member Synthetic - Sandra CPU
  62. ^ Overclock3D - Sandra CPU
  63. ^ Tom's Hardware
  64. ^ Samsung Exynos 5250 Announcement
  65. ^ HardOCP Bulldozer Desktop Performance - Synthetic Benchmarks
  66. ^ a b c d http://www.cpu-world.com/benchmarks/browse/910_80,965_61,993_80,1035_96/?c_test=6&PROCESS=Show+Selected
  67. ^ Tom's Hardware - Desktop CPU Charts 2011: Sandra 2010 Pro ALU
  68. ^ Tom's Hardware - Benchmark Results: Synthetics
  69. ^ HardOCP - Synthetic Benchmarks
  70. ^ a b http://versus.com/en/amd-fx-8350-black-edition-vs-intel-core-i7-4770k
  71. ^ - Notebookcheck
  72. ^ http://www.notebookcheck.net/Intel-Core-i7-Desktop-4770K-Notebook-Processor.93553.0.html