Регистрирайте преименуване

Свързан с:

От Уикипедия, свободната енциклопедия

Регистри за преименуване(англ. register renaming) - метод за отслабване на взаимозависимостите на командите, използвани в процесори с извънредно изпълнение на команди. Един от методите, използвани в изчислителните конвейери за прилагане на паралелизъм на ниво инструкция.

Ако в съответствие с две или повече инструкции е необходимо да се запишат данни в един регистър, правилното им извънредно изпълнение става невъзможно (по-късна инструкция не може да бъде обработена преди завършването на по-ранна), дори ако няма зависимост от данни. Такива взаимозависимости често се наричат ​​фалшиви(в случай наистинсказависимост има и зависимост от данни).

Тъй като броят на архитектурните регистри обикновено е ограничен (например стандартната x86 архитектура осигурява само осем регистъра с общо предназначение), вероятността от фалшиви взаимозависимости е доста висока, което може да доведе до влошаване на производителността на процесора.

Преименуването на регистър е трансформация на софтуерни препратки към архитектурни регистри в препратки към физически регистри и ви позволява да намалите въздействието на фалшиви взаимозависимости, като използвате голям брой физически регистри вместо ограничен брой архитектурни (например x86-съвместими процесори на архитектурата Intel P6 съдържат 40 физически регистъра [1] ). В този случай процесорът следи състоянието на кои физически регистри съответства на състоянието на архитектурните и извеждането на резултатите се извършва в реда, предвиден от програмата.

Метод, използван в IBM System/360 Model 91 (1964), POWER1 (1990), MIPS R10000 и по-новипроцесори.