Заборављена закрпа пронађена у Линук кернелу која утиче на перформансе АМД ЦПУ-а

Линук 6.0 кернел, чије се издање очекује следећег понедељка, укључује промену која се бави проблемима перформанси система који раде на АМД Зен процесорима. Утврђено је да је извор пада перформанси код додат пре 20 година да би се решио хардверски проблем у неким скуповима чипова. Хардверски проблем је одавно решен и не појављује се у тренутним чипсетима, али старо решење за проблем је заборављено и постало је извор деградације перформанси на системима заснованим на модерним АМД ЦПУ-има. Старо решење не утиче на нове системе на Интел ЦПУ-има, пошто приступају АЦПИ-ју помоћу посебног драјвера интел_идле, а не општег драјвера процесора идле.

Заобилазно решење је додато језгру у марту 2002. да би се блокирало појављивање грешке у скуповима чипова повезаних са неисправним подешавањем стања мировања због кашњења у обради СТПЦЛК# сигнала. Да би се решио проблем, АЦПИ имплементација је додала додатну инструкцију ВАИТ, која успорава процесор тако да чипсет има времена да пређе у стање мировања. Приликом профилисања коришћењем ИБС (Инструцтион-Басед Самплинг) инструкција на АМД Зен3 процесорима, откривено је да процесор троши значајну количину времена на извршавање стубова, што доводи до погрешне интерпретације стања оптерећења процесора и подешавања дубљег режима мировања (Ц- Стате) од стране процесора цпуидле.

Ово понашање се огледа у смањеним перформансама под радним оптерећењима која се често мењају између стања мировања и заузетости. На пример, када користите закрпу која онемогућава маневар заобилажења, просеци тбенцх теста се повећавају са 32191 МБ/с на 33805 МБ/с.

Извор: опеннет.ру

Додај коментар