BogoMips
BogoMips ist ein im Linux-Kernel verwendetes Maß für die CPU-Geschwindigkeit. Der Wert wird beim Booten ermittelt, um eine interne Warteschleife zu justieren.[1]
Der Name leitet sich vom englischen bogus – gefälscht, scheinbar – und dem Maß der (Millionen) Instruktionen pro Sekunde ([M]IPS) – ab. Eine oft zitierte Definition ist „Die Anzahl der Millionen Wiederholungen pro Sekunde, die ein Prozessor in der Lage ist, absolut nichts zu tun“.[2][3]
BogoMips ist ein Wert, der verwendet wird, um zu überprüfen, ob der Prozessor im Vergleich zu anderen Prozessoren der gleichen Bauart im Rahmen der üblichen Leistungsspezifikation liegt. BogoMips stellt also die Taktfrequenz eines Prozessors sowie den potentiell vorhandenen CPU-Cache fest. Er ist nicht geeignet für einen Leistungsvergleich zwischen verschiedenen CPUs.[4]
1993 veröffentlichte Lars Wirzenius eine Mail, in der er die Notwendigkeit der Einführung der BogoMips im Linux-Kernel auf comp.os.linux erklärte:
„MIPS ist die Abkürzung für Millions of Instructions per Second. Er ist ein Maß für die Berechnung eines Prozessors. Wie die meisten dieser Maßnahmen wird es öfter missbräuchlich als richtig verwendet, denn es ist sehr schwierig, MIPS für unterschiedliche Arten von Computern korrekt miteinander zu vergleichen.
BogoMips sind Linus Torvalds’ eigene Erfindung. Die Linux-Kernel-Version 0.99.11 (vom 11. Juli 1993) brauchte eine Zeitschleife, die an die Taktgeschwindigkeit des Prozessors angepasst werden musste, doch die Zeit ist zu kurz und/oder muss zu genau sein für inaktives Warten. Daher misst der Kernel beim Booten, wie schnell eine bestimmte Art von Busy Loop auf einem Computer läuft. „Bogo“ kommt von „bogus“, also etwas, das eine Fälschung ist. Damit gibt BogoMips einen Hinweis auf die Prozessor-Geschwindigkeit, aber es ist viel zu unwissenschaftlich um anders als BogoMips genannt zu werden.
Es gibt zwei Gründe weshalb es während des Boot-up angezeigt wird: a) da es etwas nützlich ist für das Debugging und um zu prüfen, ob der Computercache oder die Turbotaste funktionieren, und b) weil Linus es liebt zu kichern, wenn er sieht, wenn die Menschen über die angezeigten Nachrichten verwirrt sind.“[5]
Die BogoMips können mit der folgenden Tabelle vorausberechnet werden.[6]
Die angegebene Bewertung ist für die CPU mit der dann aktuellen und verwendeten Linux-Version. Der Index ist das Verhältnis der „BogoMips pro Taktgeschwindigkeit“ für jede CPU im Vergleich mit einer Intel 386DX-CPU und dient dem Vergleich damit.
System | Wert | Index |
---|---|---|
Intel 8088 | Takt × 0,004 | 0,02 |
Intel/AMD 386SX | Takt × 0,14 | 0,8 |
Intel/AMD 386DX | Takt × 0,18 | 1,0 (Referenz) |
Motorola 68030 | Takt × 0,25 | 1,4 |
Cyrix/IBM 486 | Takt × 0,34 | 1,8 |
Intel Pentium | Takt × 0,40 | 2,2 |
Intel 486 | Takt × 0,50 | 2,8 |
AMD 5x86 | Takt × 0,50 | 2,8 |
Mips R4000/R4400 | Takt × 0,50 | 2,8 |
Motorola 68040 | Takt × 0,67 | 3,7 |
PowerPC 603 | Takt × 0,67 | 3,7 |
Intel StrongARM | Takt × 0,66 | 3,7 |
Nexgen Nx586 | Takt × 0,75 | 4,2 |
PowerPC 601 | Takt × 0,84 | 4,7 |
Alpha 21064/21064A | Takt × 0,99 | 5,5 |
Alpha 21066/21066A | Takt × 0,99 | 5,5 |
Alpha 21164/21164A | Takt × 0,99 | 5,5 |
Intel Pentium Pro | Takt × 0,99 | 5,5 |
Cyrix 5x86/6x86 | Takt × 1,00 | 5,6 |
Intel Pentium II/III | Takt × 1,00 | 5,6 |
AMD K7/Athlon | Takt × 1,00 | 5,6 |
Intel Celeron | Takt × 1,00 | 5,6 |
Intel Itanium | Takt × 1,00 | 5,6 |
Mips R4600 | Takt × 1,00 | 5,6 |
Intel Itanium 2 | Takt × 1,49 | 8,3 |
Alpha 21264 | Takt × 1,99 | 11,1 |
Centaur VIA | Takt × 1,99 | 11,1 |
Intel Pentium M | Takt × 1,99 | 11,1 |
AMD Turion 64 MT | Takt × 1,99 | 11,1 |
AMD K5/K6/K6-2/K6-III | Takt × 2,00 | 11,1 |
AMD Duron/Athlon XP | Takt × 2,00 | 11,1 |
UltraSparc II | Takt × 2,00 | 11,1 |
Pentium MMX | Takt × 2,00 | 11,1 |
Pentium 4 | Takt × 2,00 | 11,1 |
Centaur C6-2 | Takt × 2,00 | 11,1 |
PowerPC 604/604e/750 | Takt × 2,00 | 11,1 |
Atmel AVR32 - AP7000 | Takt × 2,00 | 11,1 |
Motorola 68060 | Takt × 2,01 | 11,2 |
Intel Xeon (hyperthreading) | Takt × 3,97 | 22,1 |
Hitachi SH-4 | Takt × 1 | Keine Daten |
IBM S390 | Noch nicht genügend Daten vorhanden | |
ARM | Noch nicht genügend Daten vorhanden |
(Takt jeweils in MHz)
Einzelnachweise
- Wim van Dorst: The Quintessential Linux Benchmark. linuxjournal.com, 1. Januar 1996, abgerufen am 28. August 2012 (englisch).
- Eric S. Raymond, and Geoff Mackenzie, published on the Internet in the early 1990s, untraceable origin.
- Eric S. Raymond: Hackers Jargon File. Abgerufen am 9. Oktober 2012.
- Wim Van Dorst: BogoMips mini-Howto. 2. März 2006. Abgerufen am 24. November 2012.
- Lars Wirzenius: printing & BogoMips. Abgerufen am 9. Oktober 2012.
- Stas Bekman: What is a BogoMip?. Abgerufen am 9. Oktober 2012.