CPI (Zyklen pro Instruktion)
Durchschnittliche Anzahl Taktzyklen pro Instruktion: CPI = Taktzyklen / Instruktionen. Niedriger CPI = höhere Effizienz pro Takt.
CPI (Zyklen pro Instruktion) berechnen
Durchschnittliche Anzahl Taktzyklen pro Instruktion: CPI = Taktzyklen / Instruktionen. Niedriger CPI = höhere Effizienz pro Takt.
- CPI — CPI
- Taktzyklen — Taktzyklen
- Instruktionen — Instruktionen
Worum geht es?
CPI (Cycles per Instruction) gibt an, wie viele Taktzyklen eine CPU im Mittel pro Instruktion benötigt. Niedriges CPI bedeutet hohe Effizienz pro Takt — gute Sprungvorhersage, wenig Cache-Misses, voll ausgelastete Pipeline.
Moderne superskalare CPUs erreichen oft Werte unter 1, weil sie mehrere Instruktionen pro Takt abschließen können. Der Kehrwert (IPC, Instructions per Cycle) ist ebenfalls eine gängige Darstellung.
Die Formel
CPI = Taktzyklen / Instruktionen
Umstellungen:
Taktzyklen = CPI · Instruktionen
Instruktionen = Taktzyklen / CPIDie Variablen
| Symbol | Bedeutung | Einheit | Erklärung |
|---|---|---|---|
| Taktzyklen | Taktzyklen | Gesamtanzahl Taktzyklen. | |
| Instruktionen | Instruktionen | Anzahl ausgeführter Instruktionen. | |
| CPI | CPI | Durchschnittliche Zyklen pro Instr. |
Minimal-Beispiel
Ein Programm benötigt 4 · 10⁹ Taktzyklen für 2 · 10⁹ Instruktionen.
CPI = 4 · 10⁹ / 2 · 10⁹
= 2,0Praxis-Beispiele
Beispiel 1 — Pipeline-Auslastung
Eine ideal arbeitende Pipeline schließt 1,8 · 10⁹ Instruktionen in 2 · 10⁹ Taktzyklen ab.
CPI = 2 · 10⁹ / 1,8 · 10⁹
≈ 1,11Beispiel 2 — Taktzyklen aus CPI
CPI = 1,5 bei 3 · 10⁹ Instruktionen.
Taktzyklen = 1,5 · 3 · 10⁹
= 4,5 · 10⁹Beispiel 3 — Superskalare CPU
8 · 10⁹ Instruktionen in 5 · 10⁹ Taktzyklen.
CPI = 5 · 10⁹ / 8 · 10⁹
= 0,625 (IPC ≈ 1,6)