Branch Prediction
CPU'nun koşullu branch sonucunu önceden tahmin ederek instruction pipeline'ı kesintisiz tutmaya çalışması.
Teknik Bağlam
Tahmin edilemeyen veri bağımlı branch'ler pipeline flush ve front-end kaybı oluşturabilir. Branchless kod her zaman daha hızlı değildir; ek instruction ve vectorization etkisi ölçülmelidir.
Sınırlar
Misprediction maliyeti CPU mikro-mimarisine bağlıdır; yalnız source code'a bakarak kesin performans sonucu çıkarılamaz.
İlgili Kavramlar
- SIMD
- Vectorization
- Cache Locality
- CPU Profiling