Site icon HWCooling.net

AM4 desky tajně přetaktovávají CPU. Vyšší příkon, riziko pro čip

Procesor AMD Ryzen 3000 s dvěma CPU čiplety. Třetí už se nejspíš nevejde (teoreticky možná kdyby se IO čiplet posunul)

Co je to Power Reporting Deviation, jak manipuluje s výkonem a spotřebou procesorů Ryzen, a jak ho odhalit?

Už jsme si zvykli, že u procesorů Intel je povolené zvyšovat limity spotřeby v boostu a tím vylepšovat výkon. Oproti tomu Ryzeny měly dodržovat maximální spotřebu (tzv. PTT). Ovšem vypadá to, že i na platformě AM4 se děje tato forma přetaktování. Výrobci desek tajně manipulují údaji o spotřebě, takže „stock“ CPU ve skutečnosti běží přetaktované a má potenciálně sníženou životnost. Toto podvádění teď umí odhalit HWiNFO.

Toto skryté přetakovávání Ryzenů provádějí výrobci desek už nějakou dobu. Popsal ho poměrně známý expert na fungování procesorů AMD The Stilt na fóru utility HWiNFO, která teď v nové verzi v6.27-4185 Beta získalo schopnost ho odhalit.

Jde o exploit toho, že při hlídání maximální spotřeby se procesory Ryzen spoléhají na údaje o příkonu – respektive o proudu, který do procesoru přitéká – které mu dodává řídící obvod napájecí kaskády. Procesor pak svoji spotřebu vypočítává z okamžitého napětí, které zná, a proudu. Potíž je v tom, že VRM uvádí jen relativní hodnotu proudu (8bitové číslo 0–255), které si procesor potřebuje zkalibrovat – potřebuje vědět, kolik ampérů maximálních 255 znamená. A tuto hodnotu mu podle specifikací má sdělit deska tak, aby jeho výpočet spotřeby odpovídal skutečné spotřebě.

Stilt uvádí, že minimálně dva z hlavních výrobců desek – podle ohlasů uživatelů by to mohli být Gigabyte a Asus, ale tím seznam končit nemusí – provádějí to, že procesoru hlásí nižší hodnotu, než by měli. Deska reportuje třeba jen 70 % nebo v extrémním případě prý až jenom 50 % proudu. Výsledek je pak, že CPU si myslí, že má jen 70 % nebo 50 % své reálné spotřeby. Řízení frekvencí Precision Boost 2 u Ryzenů na správném odhadnutí spotřeby závisí, protože jde o oportunistický algoritmus, který zvedá takty co nejvýše, aby se vešel do limitu spotřeby.

Tyto limity (nazvané PTT) spotřeby jsou 88 W pro 65W procesory a 142 W pro 105W modely. Trik s lhaním o skutečné výšce proudu způsobuje, že reálně se tyto limity proporcionálně zvýší. Procesor tak nevědomky může o desítky wattů překročit limit spotřeby a běžet na frekvencích, které by v svém specifikovaném PTT nedokázal udržet. Jde vlastně o ekvivalent toho, když se přetaktuje metodou Precision Boost Overdrive. Jenomže se to děje bez vědomí a souhlasu uživatele, který si myslí, že má „stock“ systém. V recenzi pak takové tajné OC způsobí, že vyjde nereálně vysoký výkon, ale také zvýšená spotřeba překračující limit, který by správně CPU mělo držet.

Nebezpečí pro procesor?

Protože jde o přetaktování, toto nekryje záruka procesoru. A asi je zde asi také zvýšené riziko, že procesor zdegraduje. To asi není nějak dramatické – tento podvůdek naštěstí procesoru nelže o napětí, což by mohlo být smrtící. Ovšem i to, že řídící jednotka procesoru pracuje s výrazně podhodnocenými údaji o spotřebě a proudu v procesoru, může zvýšit riziko, že čip bude degradovat. Procesory AMD totiž hlavně v jednovláknovém boostu používají velmi vysoká napětí, vyšší než co je u čipu doporučeno při přetaktování všech jader na pevnou frekvenci. Možnost bezpečně použít téměř 1,5 V je podmíněná právě tím, že má tzv. algoritmus FIT přehled o teplotě, proudech a spotřebě a dovolí vysoké napětí krátkodobě na jednom nebo dvou jádrech jen tehdy, když čip celkově není pod velkou zátěží. Je zde asi nějaké riziko, že lhaní desky způsobí, že vysoké napětí bude nasazeno v situaci, kdy už tak bezpečné není a toto bude postupně čip „nahlodávat“.

Situace je zde odlišná od procesorů Intel, kde výrobce nepovažuje navyšování limitů spotřeby za přetaktování a dovoluje ho výrobcům desek (u nadšeneckých modelů to možná i trošku podporuje, kvůli výkonu). Protože Intely mají méně radikální boostovací algoritmus a nejdou tak na hranu, mělo by to pro ně být dlouhodobě bezpečné.

Tato manipulace na deskách pro Ryzeny je ale naopak ze strany AMD zakázaná, specifikace ji nepovolují. AMD podle Stilta tlačí na výrobce desek, u kterých se toto ukáže, aby tyto triky nepoužívali. Ale zdá se, že nemá dostatečný respekt, aby zákaz reálně prosadilo.

Ošizené řízení spotřeby může identifikovat HWiNFO

The Stilt uvádí, že přetrvávající používání těchto triků na deskách bylo motivací pro to, aby program HWiNFO dostal detekci pro tento trik. Umožňuje to nově přidaná položka jmenující se „Power Reporting Deviation“, kterou najdete v sekci „Advanced“ senzorů procesoru, když otevřete okno s přehledem všech senzorů.

Tato položka má ukazovat, zda je spotřeba procesoru reportována přesně – to je tehdy, když ukazuje 100 % nebo blízké číslo (dejme tomu +- 5 %). Hodnoty přes 100 % znamenají, že deska hlásí větší spotřebu, než je reálná, takže výsledkem by byl snížený výkon – toto logicky desky většinou nedělají.

Takto to má vypadat, když je všechno v pořádku: při spuštěném Cinebench R20 MT nepřetaktovaný procesor ukazuje Power Reporting Deviation okolo 100 % (Zdroj: The Stilt/Fórum HWiNFO)

Aby toto měření fungovalo, musíte nejdřív zajistit dvě věci. Jednak musí být procesor pod plnou a rovnoměrnou 100% zátěží, v idle nebo menší zátěži to nefunguje. Vývojáři softwaru počítají se zatížením pomocí Cinebench R20 (MT test), takže nejlépe použijte tento program – Prime95 nebo jiný software silně používající 256bitové SIMD není doporučen, protože na Zenu 2 může vést k nižší než maximální spotřebě (procesor si sám sníží výkon kvůli proudovým limitům jednotek), kdežto Cinebench se 128bitovým SIMD využívá celé PTT.

Druhá podmínka je, že procesor nesmí být nijak přetaktovaný (ani běžně, ani přes PBO, mají se také vypnout změny LLC a podobná nastavení, možná i offsety napětí). S přetočeným CPU toto celá postrádá smysl. Když tedy máte procesor ve stock nastavení a pod 100% zátěží v Cinebench, podívejte se, kolik procent ukazuje položka Power Reporting Deviation. Na šidících deskách můžete vidět hodnoty jako 85 %, 70 % a podobně. Ty znamenají, že deska procesoru tvrdí, že jeho spotřeba je jenom 85 %, respektive 70 % reálné, takže o tento rozdíl se může zvýšit výsledná spotřeba procesoru (až na 1,15× a 1,3× násobek). Ještě jednou pro pořádek zopakujme, že mimo 100% zátěž tato hodnota bude uvádět nesmyslná čísla, takže na ni nehleďte.

Power Reporting Deviation je zde při zátěži udána 75 %. To znamená, že deska podvádí a hlásí procesoru jen 75 % proudu/spotřeby, která je skutečně odebírána (Zdroj: The Stilt/Fórum HWiNFO)

U některých procesorů (šestijádra, osmijádra) CPU nepůjde nadoraz tohoto wattového „bonusu“, pokud je třeba 30–40%, protože dřív narazí na separátní limity, které má CPU povolené pro napětí a frekvence jader. Ale třeba u takového Ryzenu 9 3900X a zejména Ryzenu 9 3950X bude nejspíš procesor ochoten zhltat desítky wattů navíc v domnění, že má rezervu, než se boostovací algoritmus nasytí.

Je možné, že přítomnost detekce v HWiNFO přiměje výrobce desek tento exploit opustit. Faktor, o který tu jde, hlásí procesoru BIOS a aktualizací UEFI lze tedy tento trik zase odstranit (z čehož také vyplývá, že deviace může být pro různé verze BIOSu na stejné desce různá). Zda to zabere, nebo výrobci desek najdou nějaký způsob, jak toto manipulování v budoucnu zase zamaskovat, aby mohlo podvádění pokračovat, to teprve uvidíme.