branchprediktion
Branchprediktion er en teknikk i moderne prosessorer som forsøker å forutsi om en gren i programflyten vil bli tatt (taken) eller ikke (not taken) før grenbeslutningen blir kjent. Målet er å holde instruksjonsflyten jevn i en pipelined CPU og dermed redusere unødvendige avbrudd og misprediksjoner som kan koste ytelse.
Historisk sett ble enkle prediktorer basert på 1-bit tilnærming eller en 2-bit saturerende teller brukt. Etter
Det finnes flere tilnærminger: lokal prediksjon bruker en egen historikktabell for hver gren; global prediksjon bruker
Komponentene: BTB for måladresser, GHR for historikk, PHT for selve beslutningen, og ofte en return address
Nyere teknikker inkluderer prediktorer basert på maskinlæring, som perceptron-baserte prediktorer, og spesialiserte ordninger for indirekte grener