The term is commonly used in association with a numeric value such as thousand instructions per second (kIPS), million instructions per second (MIPS), or Million Operations per Second (MOPS).
A thousand instructions per second (kIPS) is rarely used, as most current microprocessors can execute several million 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.
The floating-point arithmetic equivalent of MIPS is FLOPS, to which the same cautions apply.
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). Whetstone Benchmark History and Results provides some 700 results for minicomputers, mainframes, supercomputers and PCs. 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, 1534 MWIPS through HTML/Java to 2403 MWIPS using a modern C/C++ compiler. Source code, pre-compiled versions and results on PCs, for these and other benchmarks that measure MIPS, are available from Roy Longbottom’s PC Benchmark Collection (Free).
Most 8-bit and early 16-bit microprocessors have a performance measured in kIPS (thousand instructions per second), which equals 0.001 MIPS. The first general purpose microprocessor, the Intel i8080, ran at 640 kIPS. The Intel i8086 microprocessor, the first 16-bit microprocessor in the line of processors made by Intel and used in IBM PCs, ran at 800 kIPS. 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).
| Processor | IPS | IPS/MHz | Year | Source |
|---|---|---|---|---|
| Pencil and paper (for comparison) | 1892 | |||
| Intel 4004 | 1971 | |||
| IBM System/370 model 158-3 | 1972 | |||
| Intel 8080 | 1974 | |||
| VAX 11/780 | 1977 | |||
| Motorola 68000 | 1979 | |||
| Intel 286 | 1982 | |||
| Motorola 68020 | 1984 | |||
| ARM2 | 1986 | |||
| Motorola 68030 | 1987 | |||
| Intel 386DX | 1988 | |||
| Motorola 68040 | 1990 | |||
| Intel 486DX | 1992 | |||
| PowerPC 600s (G2) | 1994 | |||
| Motorola 68060 | 1994 | |||
| Intel Pentium Pro | 1996 | |||
| ARM 7500FE | 1996 | |||
| PowerPC G3 | 1997 | |||
| Zilog eZ80 | 1999 | |||
| Intel Pentium III | 1999 | |||
| Freescale MPC8272 | 2000 | Integrated Communications Processors | ||
| AMD Athlon | 2000 | |||
| AMD Athlon XP 2400+ | 2002 | |||
| Pentium 4 Extreme Edition | 2003 | |||
| ARM Cortex A8 | 2005 | |||
| AMD Athlon FX-57 | 2005 | |||
| AMD Athlon 64 3800+ X2 (Dual Core) | 2005 | |||
| Xbox360 IBM "Xenon" Triple Core | 2005 | |||
| PS3 Cell BE (PPE only) | 2006 | |||
| AMD Athlon FX-60 (Dual Core) | 2006 | |||
| Intel Core 2 X6800 | 2006 | |||
| Intel Core 2 Extreme QX6700 | 2006 | |||
| P.A. Semi PA6T-1682M | 2007 | |||
| Intel Core 2 Extreme QX9770 | 2008 | |||