CPU en architectuur
Wat is het belangrijkste doel van registerhernoeming (register renaming) in out-of-order CPU's?
- AHet aantal registers verminderen om de schakeling kleiner te maken
- BFysieke registers opnieuw toewijzen zonder de door het programma gebruikte registernamen te wijzigen, om schijnbare afhankelijkheden (WAR en WAW) weg te nemen
- CDe registerwaarden versleutelen
Antwoord en toelichting tonen
Antwoord: B. Fysieke registers opnieuw toewijzen zonder de door het programma gebruikte registernamen te wijzigen, om schijnbare afhankelijkheden (WAR en WAW) weg te nemen
Omdat het aantal registers in de instructieset beperkt is tot circa 16 tot 32, worden dezelfde registernamen hergebruikt en ontstaan afhankelijkheden die niets met de werkelijke gegevensstroom te maken hebben (anti-afhankelijkheid WAR en uitvoerafhankelijkheid WAW). Registerhernoeming wijst dynamisch honderden fysieke registers toe en gebruikt bij elke schrijfbewerking een nieuw fysiek register om deze weg te nemen, zodat meer instructies parallel kunnen worden uitgevoerd. Echte afhankelijkheden (RAW) kunnen niet worden weggenomen.