Registeromdøping betegner innenfor datamaskinarkitektur en teknikk som er brukt for å unngå unødvendig serialisering ved bruk av prosessorregistre. Teknikken har aktualitet i superskalære arkitekturer med out-of-order execution.
Betrakt følgende kode:
# Instruction 1 R1 = M 2 R1 = R1 + 2 3 M = R1 4 R1 = M 5 R1 = R1 + 4 6 M = R1
Instruksjonene 4, 5 og 6 er uavhengig av 1, 2 og 3, men mikroprosessoren kan ikke påbegynne instruksjon 4 før instruksjon 3 er avsluttet, ellers vil sistnevnte få feil verdi. Denne restriksjonen kan bli eliminert ved å endre navnene på noen av registrene:
# Instruction # Instruction 1 R1 = M 4 R2 = M 2 R1 = R1 + 2 5 R2 = R2 + 4 3 M = R1 6 M = R2
Nå kan instruksjonene 4, 5 og 6 utføres i parallell med instruksjonene 1, 2 og 3.
Kategori:Datamaskinarkitektur