Instructions per second


Instructions per second

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, researchers created standardized tests such as SPECint to attempt to measure the real effective 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).

Contents

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 1000, not 1024.

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.

Million instructions per second

Comparison of processors speeds requires thorough analysis, as the speed of a given CPU is dependent upon 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 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. This and other limitations of the unit lead many computer engineers to define MIPS as Meaningless Indicator of Processor Speed.[1]

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 of the minicomputer performance claims were based on the Fortran version of the Whetstone benchmark. This produces an artificial speed rating in Millions of Whetstone Instructions Per Second (MWIPS). The VAX 11/780 with FPA (1977) is shown as having a rating of 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 compiler was for BASIC (1982) when a 4.8 MHz 8088/87 CPU obtained 0.01 MWIPS. Results on a 2.4 GHz 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 the performance was recognized in thousand instructions per second (kIPS), which equals 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 and used in IBM PCs,[dubious ] 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).

Timeline of instructions per second

Processor Dhrystone MIPS D IPS / clock cycle D IPS / clock cycle / Core Year Source
Intel 4004 92 kIPS at 740 kHz
(Not Dhrystone)
0.1 0.1 1971 [2]
IBM System/370 model 158-3 1 Dhrystone MIPS 1.0 0.1 1972
Intel 8080 500 kIPS at 2 MHz
(Not Dhrystone)
0.3 0.3 1974
MOS Technology 6502 500 kIPS at 1 MHz
(Not Dhrystone)
0.5 0.5 1975
VAX-11/780 500 kIPS at 5 MHz
1 Dhrystone MIPS
0.2 0.2 1977
Motorola 68000 1 MIPS at 8 MHz
(Not Dhrystone)
0.1 0.1 1979
Intel 286 2.66 MIPS at 12.5 MHz 0.2 0.2 1982 [3]
Motorola 68020 4 MIPS at 20 MHz 0.2 0.2 1984
Intel 386DX 11.4 MIPS at 33 MHz 0.3 0.3 1985
ARM2 4 MIPS at 8 MHz 0.5 0.5 1986
Motorola 68030 11 MIPS at 33 MHz 0.3 0.3 1987
Motorola 68040 44 MIPS at 40 MHz 1.1 1.1 1990 [4]
DEC Alpha 21064 EV4 300 MIPS at 150 MHz 2.0 2.0 1992 [5]
Intel 486DX 54 MIPS at 66 MHz 0.8 0.8 1992
Motorola 68060 88 MIPS at 66 MHz 1.33 1.33 1994
Intel Pentium 188 MIPS at 100 MHz 1.88 1.88 1994 [6]
Microchip PIC16F 5 MIPS at 20 MHz 0.25 0.25 1995 [7]
Atmel megaAVR 16 MIPS at 16 MHz 1 1 1996 [8]
ARM 7500FE 35.9 MIPS at 40 MHz 0.9 0.9 1996
Intel Pentium Pro 541 MIPS at 200 MHz 2.7 2.7 1996 [9]
PowerPC 750 525 MIPS at 233 MHz 2.3 2.3 1997
Zilog eZ80 80 MIPS at 50 MHz 1.6 1.6 1999 [10]
Intel Pentium III 2,054 MIPS at 600 MHz 3.4 3.4 1999 [6]
Freescale MPC8272 760 MIPS at 400 MHz 1.9 1.9 2000 [11] Integrated Communications Processors
AMD Athlon 3,561 MIPS at 1.2 GHz 3.0 3.0 2000
AMD Athlon XP 2500+ 7,527 MIPS at 1.83 GHz 4.1 4.1 2003 [6]
Pentium 4 Extreme Edition 9,726 MIPS at 3.2 GHz 3.0 3.0 2003
MIPS32 4KEc 356 MIPS at 233 MHz 1.5 1.5 2004 [12]
Microchip PIC10F 1 MIPS at 4 MHz 0.25 0.25 2004 [13][14]
ARM Cortex M3 125 MIPS at 100MHz 1.25 1.25 2004 [15]
Nios II/f 190 MIPS at 165 MHz 1.13 1.13 2004 [16]
ARM Cortex A8 2,000 MIPS at 1.0 GHz 2.0 2.0 2005 [17]
VIA C7 1,799 MIPS at 1.3 GHz 1.4 1.4 2005 [18]
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 [19]
Xbox360 IBM "Xenon" (Triple core) 19,200 MIPS at 3.2 GHz 6.0 2.0 2005
PS3 Cell BE (PPE only) 10,240 MIPS at 3.2 GHz 3.2 3.2 2006
AMD Athlon FX-60 (Dual core) 18,938 MIPS at 2.6 GHz 7.3 3.6 2006 [19]
Intel Core 2 Extreme X6800 (Dual core) 27,079 MIPS at 2.93 GHz 9.2 4.6 2006 [19]
Intel Core 2 Extreme QX6700 (Quad core) 49,161 MIPS at 2.66 GHz 18.4 4.6 2006 [20]
MIPS32 24K 604 MIPS at 400 MHz 1.51 1.51 2006 [21]
ARM Cortex R4 450 MIPS at 270 MHz 1.66 1.66 2006 [22]
MIPS64 20Kc 1,370 MIPS at 600 MHz 2.3 2.3 2007 [23]
P.A. Semi PA6T-1682M 8,800 MIPS at 2.0 GHz 4.4 4.4 2007 [24]
Intel Core 2 Extreme QX9770 (Quad core) 59,455 MIPS at 3.2 GHz 18.6 4.6 2008 [25]
Intel Core i7 920 (Quad core) 82,300 MIPS at 2.66 (Turbo 2.93) GHz 30.9 7.7 2008 [26]
Intel Atom N270 (Single core) 3,846 MIPS at 1.6 GHz 2.4 1.2 2008 [27]
ARM Cortex M0 45 MIPS at 50MHz 0.9 0.9 2009 [28]
ARM Cortex A9 (Dual core) 5,000 MIPS at 1.0 GHz 5.0 2.5 2009 [29]
AMD E-350 (Dual core) 10,000 MIPS at 1.6 GHz 6.25 3.125 2011 [30]
AMD Phenom II X4 940 Black Edition 42,820 MIPS at 3.0 GHz 14.3 3.5 2009 [31]
AMD Phenom II X6 1100T 78,440 MIPS at 3.3 GHz 23.7 3.9 2010 [26]
ARM Cortex-A15 (Quad core) 35,000 MIPS at 2.5 GHz 14.0 3.5 2010 [32]
Intel Core i7 Extreme Edition 980X (Hex core) 147,600 MIPS at 3.33 GHz 44.7 7.46 2010 [33]
Intel Core i7 2600K 128,300 MIPS at 3.4 GHz 37.7 9.43 2011 [34]
Intel Core i7 875K 92,100 MIPS at 2.93 GHz 31.4 7.85 2011 [35]
AMD FX-8150 (Eight core) 108,890 MIPS at 3.6 GHz 30.2 3.78 2011 [36]
ARM11 515 MIPS at 412 MHz 1.25 1.25 2002 [37]
ARM Cortex A7 2,850 MIPS at 1.5 GHz 1.9 1.9 2011 [38]
Qualcomm Scorpion (Cortex A8-like) 2,100 MIPS at 1 GHz 2.1 2.1 2008 [39]
Qualcomm Krait (Cortex A9-like, Dual core) 9,900 MIPS at 1.5 GHz 6.6 3.3 2011 [40]
Intel Core i7 Extreme Edition 3960X (Hex core) 177,730 MIPS at 3.33 GHz 53.3 8.89 2011 [41]

Historic data

See also

References

  1. ^ Ted MacNeil. "Don't be Misled by MIPS". IBM magazine. http://www.ibmsystemsmag.com/mainframe/enewsletterexclusive/9806p1.aspx. 
  2. ^ MCS4 > IntelP4004
  3. ^ Intel 80286 Microprocessor Chip (c1982)]
  4. ^ Freescale 68040 description
  5. ^ Digital's 21064 Microprocessor, Digital Equipment Corporation (c1992) accessdate=2009-08-29
  6. ^ a b c Tomshardware Cpu chart 2004
  7. ^ PIC16F84A
  8. ^ Atmel Corporation - Atmel AVR 8- and 32-bit - megaAVR
  9. ^ SiSoftware Zone
  10. ^ "Zilog Sees New Lease of Life for Z80 in Internet Appliances". Computergram International. 1999. http://findarticles.com/p/articles/mi_m0CGN/is_3751/ai_55817127. 
  11. ^ Freescale Semiconductor - MPC8272 PowerQUICC II Processor Family
  12. ^ [1]
  13. ^ PIC10F200
  14. ^ Microchip Technology Debuts Industry’s First 6-Pin Microcontrollers: The World’s Smallest Microcontroller
  15. ^ ARM Cortex-M3
  16. ^ Nios II Performance Benchmarks
  17. ^ ARM Cortex-A8
  18. ^ mini-itx.com - epia px 10000 review
  19. ^ a b c CPU Charts 2007 - Tom's Hardware
  20. ^ Synthetics, Continued - Tom's Hardware : Intel's Core 2 Quadro Kentsfield: Four Cores on a Rampage
  21. ^ http://www.mips.com/products/cores/32-64-bit-cores/mips32-24k/ MIPS32 24K]
  22. ^ Cortex-R4 Processor
  23. ^ Design Reuse - needs free registration
  24. ^ 登錄電子工程專輯網站,時刻處於電子設計的潮流尖端
  25. ^ Synthetic - Sandra CPU - Tom's Hardware : Intel Core 2 Extreme QX9770: Paper Tiger?
  26. ^ a b Tom's Hardware Cpu Charts 2010
  27. ^ OC Workbench
  28. ^ Cortex-M0 Processor
  29. ^ EEE Journal
  30. ^ Tom's Hardware
  31. ^ XtremeSystems Member Synthetic - Sandra CPU
  32. ^ Cortex-A15 Processor
  33. ^ Overclock3D - Sandra CPU
  34. ^ Tom's Hardware - Benchmark Results: Synthetics
  35. ^ Tom's Hardware - Desktop CPU Charts 2011: Sandra 2010 Pro ALU
  36. ^ HardOCP Bulldozer Desktop Performance - Synthetic Benchmarks
  37. ^ Anandtech ARM Cortex A7 architecture comparison
  38. ^ Anandtech ARM Cortex A7 architecture comparison
  39. ^ Anandtech ARM Cortex A7 architecture comparison
  40. ^ Anandtech ARM Cortex A7 architecture comparison
  41. ^ HardOCP - Synthetic Benchmarks

Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Instructions per Second — Instruktionen pro Sekunde (IPS, englisch Instructions per Second), meist als Millionen Instruktionen pro Sekunde (MIPS, Million instructions per second, Mega instructions per second), ist eine Maßeinheit für die Leistungsfähigkeit (Benchmark) der …   Deutsch Wikipedia

  • Mega instructions per second — Instruktionen pro Sekunde (IPS, englisch Instructions per Second), meist als Millionen Instruktionen pro Sekunde (MIPS, Million instructions per second, Mega instructions per second), ist eine Maßeinheit für die Leistungsfähigkeit (Benchmark) der …   Deutsch Wikipedia

  • Million Instructions per Second —   [dt. »Millionen Anweisungen pro Sekunde«], MIPS …   Universal-Lexikon

  • million instructions per second — noun (computer science) a unit for measuring the execution speed of a computer s CPU (but not the whole system) 4 MIPS is 4,000,000 instructions per second • Syn: ↑MIPS • Topics: ↑computer science, ↑computing • …   Useful english dictionary

  • Million Instructions per Second — ⇡ MIPS …   Lexikon der Economics

  • Instructions Per Cycle — In computer architecture, Instructions Per Clock (Instruction Per Cycle or IPC) is a term used to describe one aspect of a processor s performance: the average number of instructions executed for each clock cycle. It is the multiplicative inverse …   Wikipedia

  • Floating-Point Operations Per Second — (FLOPS) (opérations à virgule flottante par seconde) est une mesure commune de repère pour évaluer la vitesse des microprocesseurs. Les opérations en virgule flottante incluent toutes les opérations qui impliquent des nombres réels. De telles… …   Wikipédia en Français

  • Floating-point operations per second — (FLOPS) (opérations à virgule flottante par seconde) est une mesure commune de repère pour évaluer la vitesse des microprocesseurs. Les opérations en virgule flottante incluent toutes les opérations qui impliquent des nombres réels. De telles… …   Wikipédia en Français

  • Instructions Par Seconde — L instruction par seconde (la plupart du temps million d instructions par seconde, MIPS) est une unité de mesure utilisée en informatique. Elle est la meilleure unité[réf. nécessaire] pour établir des comparatifs de puissance entre… …   Wikipédia en Français

  • Instructions par seconde — L instruction par seconde (la plupart du temps million d instructions par seconde, MIPS) est une unité de mesure utilisée en informatique. Elle est la meilleure unité[réf. nécessaire] pour établir des comparatifs de puissance entre… …   Wikipédia en Français