Die Verzweigungsvorhersage ist eine im CPU-Design verwendete Technik, die versucht, das Ergebnis einer bedingten Operation zu erraten und sich auf das wahrscheinlichste Ergebnis vorzubereiten. Eine digitale Schaltung, die diese Operation durchführt, ist als Verzweigungsprädiktor bekannt. Es ist ein wichtiger Bestandteil moderner CPU-Architekturen wie x86.
Wie funktioniert es?
Wenn eine bedingte Operation wie eine if…else-Anweisung verarbeitet werden muss, „spekuliert“ der Verzweigungsprädiktor, welche Bedingung am wahrscheinlichsten erfüllt wird. Es führt dann die Operationen aus, die für das wahrscheinlichste Ergebnis im Voraus erforderlich sind. Auf diese Weise sind sie bereits vollständig, wenn die Vermutung richtig war. Wenn sich die Vermutung zur Laufzeit als nicht richtig herausstellt, führt die CPU den anderen Zweig der Operation aus, was zu einer leichten Verzögerung führt. Aber wenn die Vermutung richtig war, wird die Geschwindigkeit deutlich erhöht.
Wenn eine bedingte Operation zum ersten Mal angezeigt wird, verfügt der Verzweigungsprädiktor nicht über viele Informationen, die er als Grundlage für eine Vermutung verwenden kann. Aber je häufiger dieselbe Operation verwendet wird, desto genauer kann ihre Vermutung werden.
CPU-Begriffe