Технология Loop Buffer, встречающаяся только в процессорах AMD на архитектуре Zen 4, была задумана для оптимизации производительности путем обхода входного конвейера. Однако, из-за недостаточной документации для разработчиков и, как следствие, неоптимальной реализации, ожидаемого прироста производительности она не принесла. В итоге, AMD деактивировала эту функцию с помощью обновления BIOS AGESA 1.2.0.2a для материнских плат на AM5.
Сам факт отключения функции Loop Buffer был обнаружен благодаря исследованию, проведённому ресурсом Chips and Cheese. В ходе тестирования AMD Ryzen 9 7950X3D на материнской плате ASRock B650 PG Lightning было замечено, что функция Loop Buffer точно работала в BIOS версии 1.21 с патчем AGESA 1.0.0.6, но перестала работать после обновления до BIOS 3.10 с патчем AGESA 1.2.0.2a.
К счастью, отключение функции никак не сказалось на производительности процессоров Zen 4. Это подтверждает, что реализация данной технологии была неэффективной. Основную работу по обработке циклов, как выяснилось, выполнял кэш микроопераций (Op Cache), изначально присутствующий в архитектуре Zen.
Функция Loop Buffer представляет собой небольшое встроенное хранилище инструкций, используемых в циклах — последовательностях команд, многократно повторяющихся при выполнении программы. Идея заключалась в том, чтобы избежать запросов этих инструкций из кэша или оперативной памяти, что должно было снизить энергопотребление и повысить эффективность.
Однако в Zen 4 уже имеется Op Cache с достаточной пропускной способностью для хранения этих инструкций. Именно благодаря ему процессоры Zen 4 эффективно работали и без функции Loop Buffer. AMD, очевидно, учитывала этот факт при разработке Zen 5, где функция Loop Buffer уже отсутствует.
В отличие от Intel и Arm, успешно реализовавших аналогичные механизмы, AMD не удалось добиться прироста производительности с помощью функции Loop Buffer. Тем не менее, существующий механизм Op Cache обеспечивает эффективную работу процессоров Zen.
Источник новости: overclockers.ru