/ Performance & Benchmarking

CPI (Zyklen pro Instruktion)

Durchschnittliche Anzahl Taktzyklen pro Instruktion: CPI = Taktzyklen / Instruktionen. Niedriger CPI = höhere Effizienz pro Takt.

CPI (Zyklen pro Instruktion)
01 · Eingabe

CPI (Zyklen pro Instruktion) berechnen

Durchschnittliche Anzahl Taktzyklen pro Instruktion: CPI = Taktzyklen / Instruktionen. Niedriger CPI = höhere Effizienz pro Takt.

Lösen für
CPI = Taktzyklen / 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

Formel CPI
CPI = Taktzyklen / Instruktionen

Umstellungen:
    Taktzyklen    = CPI · Instruktionen
    Instruktionen = Taktzyklen / CPI

Die Variablen

SymbolBedeutungEinheitErklärung
TaktzyklenTaktzyklenGesamtanzahl Taktzyklen.
InstruktionenInstruktionenAnzahl ausgeführter Instruktionen.
CPICPIDurchschnittliche Zyklen pro Instr.

Minimal-Beispiel

Ein Programm benötigt 4 · 10⁹ Taktzyklen für 2 · 10⁹ Instruktionen.

Rechnung CPI
CPI = 4 · 10⁹ / 2 · 10⁹
    = 2,0

Praxis-Beispiele

Beispiel 1 — Pipeline-Auslastung

Eine ideal arbeitende Pipeline schließt 1,8 · 10⁹ Instruktionen in 2 · 10⁹ Taktzyklen ab.

Rechnung CPI
CPI = 2 · 10⁹ / 1,8 · 10⁹
    ≈ 1,11

Beispiel 2 — Taktzyklen aus CPI

CPI = 1,5 bei 3 · 10⁹ Instruktionen.

Rechnung Taktzyklen
Taktzyklen = 1,5 · 3 · 10⁹
           = 4,5 · 10⁹

Beispiel 3 — Superskalare CPU

8 · 10⁹ Instruktionen in 5 · 10⁹ Taktzyklen.

Rechnung CPI
CPI = 5 · 10⁹ / 8 · 10⁹
    = 0,625   (IPC ≈ 1,6)