3 ms·
Modern CPUs use TAGE-like[1] and Perceptron-based branch predictors, achieving a 99.7% prediction accuracy. Zen 2 in particular uses TAGE[2]. I recall implemen
by delta_p_delta_x 3y ago
Modern CPUs use TAGE-like[1] and Perceptron-based branch predictors, achieving a 99.7% prediction accuracy. Zen 2 in particular uses TAGE[2].
I recall implementing one in software in a computer architectures class; it was pretty gnarly but the prediction accuracy (and therefore performance) compared to a simple two-bit saturating counter is immense.
[1]: https://doi.org/10.1145/3226098 https://doi.org/10.1145/3226098
[2]: https://en.wikichip.org/wiki/amd/microarchitectures/zen_2#Branch_Prediction_Unit https://en.wikichip.org/wiki/amd/microarchitectures/zen_2#Br...