Регистрирайте преименуване
Свързан с:
От Уикипедия, свободната енциклопедия
Регистри за преименуване(англ. register renaming) - метод за отслабване на взаимозависимостите на командите, използвани в процесори с извънредно изпълнение на команди. Един от методите, използвани в изчислителните конвейери за прилагане на паралелизъм на ниво инструкция.
Ако в съответствие с две или повече инструкции е необходимо да се запишат данни в един регистър, правилното им извънредно изпълнение става невъзможно (по-късна инструкция не може да бъде обработена преди завършването на по-ранна), дори ако няма зависимост от данни. Такива взаимозависимости често се наричат фалшиви(в случай наистинсказависимост има и зависимост от данни).
Тъй като броят на архитектурните регистри обикновено е ограничен (например стандартната x86 архитектура осигурява само осем регистъра с общо предназначение), вероятността от фалшиви взаимозависимости е доста висока, което може да доведе до влошаване на производителността на процесора.
Преименуването на регистър е трансформация на софтуерни препратки към архитектурни регистри в препратки към физически регистри и ви позволява да намалите въздействието на фалшиви взаимозависимости, като използвате голям брой физически регистри вместо ограничен брой архитектурни (например x86-съвместими процесори на архитектурата Intel P6 съдържат 40 физически регистъра [1] ). В този случай процесорът следи състоянието на кои физически регистри съответства на състоянието на архитектурните и извеждането на резултатите се извършва в реда, предвиден от програмата.
Метод, използван в IBM System/360 Model 91 (1964), POWER1 (1990), MIPS R10000 и по-новипроцесори.