CPU und Architektur

Was ist der Zweck der Sprungvorhersage (Branch Prediction) einer CPU?

  1. ADas Ergebnis eines Verzweigungsbefehls vorherzusagen, nachfolgende Befehle vorab auszuführen und Pipeline-Stillstände zu verringern
  2. BDie Leistungsaufnahme vorherzusagen und die Versorgung zu steuern
  3. CDie Kapazität des Hauptspeichers vorherzusagen
Antwort und Erläuterung anzeigen

Antwort: A. Das Ergebnis eines Verzweigungsbefehls vorherzusagen, nachfolgende Befehle vorab auszuführen und Pipeline-Stillstände zu verringern

In einer Pipeline steht der nächste Befehl erst fest, wenn das Ergebnis des Verzweigungsbefehls bekannt ist, und die Verarbeitung würde stehen bleiben. Bei der Sprungvorhersage wird das Sprungziel anhand der bisherigen Historie vorhergesagt und die Ausführung vorangetrieben; nur bei falscher Vorhersage wird neu begonnen. Etwa jeder fünfte Befehl eines Programms ist eine Verzweigung, daher ist der Einfluss groß, und heutige Hochleistungs-CPUs erreichen Vorhersagegenauigkeiten über 95 %. Ein Fehlschlag kostet etwa zehn bis zwanzig Takte, sodass schon kleine Genauigkeitsgewinne die Leistung beeinflussen.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu CPU und Architektur

  1. Was ist der Hauptgrund, warum GPUs für Matrixoperationen sowie Training und Inferenz von KI geeignet sind?
  2. Wie groß ist die mittlere Zugriffszeit bei einer Cache-Zugriffszeit von 10 ns, einer Hauptspeicher-Zugriffszeit von 100 ns und einer Cache-Trefferrate von 90 %?
  3. Wie ändert sich in einer CMOS-Schaltung die dynamische Leistungsaufnahme, wenn bei sonst unveränderten Bedingungen nur die Versorgungsspannung halbiert wird?
  4. Was bezeichnen Namen wie ARM, x86 und RISC-V hauptsächlich?
  5. Welche Aussage zu RISC-V ist richtig?

Vergleiche zu diesem Thema