Отключение уязвимого механизма psf в процессорах amd zen 3 почти не снижает производительность


  • Источник: 3dnews.ru 
  • Дата: Апр 04, 2021 
  • Просмотры: 661

На днях AMD сообщила, что механизм Predictive Store Forwarding (PSF) в процессорах с архитектурой Zen 3 подвержен атакам по побочному каналу (вроде Spectre и Meltdown), которые базируются на анализе данных, осевших в процессорном кеше при спекулятивном выполнении команд. Компания рассказала пользователям, как они могут обезопасить себя и отключить данную функциональность, но не прокомментировала, как это повлияет на производительность. Журналисты Phoronix решили прояснить этот вопрос.

otkliuchenie-uiazvimogo-mekhanizma-psf-v-protcessorakh-amd-zen-3-pochti-ne-snizhaet-proizvoditelnost_1.jpg

(Phoronix)

Новый механизм предсказания Predictive Store Forwarding (PSF) в процессорах AMD Zen 3 оказался подвержен аппаратной уязвимости чтения данных через сторонний канал. В теории отключение данной возможности должно снизить производительность, и именно этот эффект мы наблюдали на примере процессоров Intel в процессе устранения уязвимостей Spectre и Meltdown. Но на данный момент AMD ссылается на то, что случаи эксплуатации уязвимости в PSF неизвестны, поэтому она не рекомендует конечным пользователям отключать функциональность во избежание падения производительности.

Механизм PSF отключается в процессорах Zen 3 с помощью установки определённых MSR-битов. В техническом документе AMD пообещала опубликовать заплатки для Linux, позволяющие легко отключить PSF в случае необходимости, но пока общедоступных патчей нет.

otkliuchenie-uiazvimogo-mekhanizma-psf-v-protcessorakh-amd-zen-3-pochti-ne-snizhaet-proizvoditelnost_2.jpg

(Phoronix)

Тем не менее Майкл Ларабель (Michael Larabel) из Phoronix самостоятельно собрал ядро операционной системы Linux с отключеннымPSF и провёл десятки тестов на нескольких системах с процессорами серий AMD Ryzen 5000 и EPYC 7003 на обычном ядре и ядре с отключённым механизмом PSF. По его словам, тестирование проводилось на широком спектре рабочих нагрузок, причём каждый тест запускался автоматически по несколько раз.

В итоге пришлось констатировать, что отключение PSF влияет на производительность минимально. В большинстве случаев разница была в пределах статистической погрешности, хотя в некоторых рабочих нагрузках она приближалась к 1%. Например, процессор Ryzen 7 5800X был пропущен через набор из более чем 100 тестов. При этом усреднение всех результатов говорит о менее чем 1,5% потери производительности при отключении потенциально опасной функции Zen 3.

otkliuchenie-uiazvimogo-mekhanizma-psf-v-protcessorakh-amd-zen-3-pochti-ne-snizhaet-proizvoditelnost_3.jpg

(Phoronix)

Короче говоря, несмотря на то, что AMD в целом не рекомендует своим клиентам отключать PSF, если кто-то решит пойти на этот шаг во имя повышения безопасности, это, скорее всего, не приведёт к какой-либо существенной разнице в производительности. В отличие от прочих заплаток, призванных бороться с атаками, связанным со спекулятивным исполнением команд, в этот раз всё обошлось малой кровью.

otkliuchenie-uiazvimogo-mekhanizma-psf-v-protcessorakh-amd-zen-3-pochti-ne-snizhaet-proizvoditelnost_4.jpg