Sledujete-li vývoj okolo procesorů Ryzen, pravděpodobně víte o tom, že u nich AMD doporučuje v systému Windows používat nastavení spotřeby vysoký výkon (high performance) místo režimu rovnováha (balanced). Ten má totiž na Ryzenu negativní dopady na výkon. Pro tento problém nyní naštěstí vychází řešení. Opravu AMD oznámilo na svém blogu (zde). Jak již bylo oznámeno dříve, spočívá víceméně v deaktivaci techniky Core Parking a zrychlení prodlevy spojené s přepínání frekvence jader, což jsou důvody, proč režim rovnováha snižoval výkon. Neznamená to ovšem, že by se z původního nastavení rovnováha stal potichu režim vysoký výkon, instalace opravy by měla být o něco efektivnějším řešením.
Šetření energií přímo v režii CPU
Režim rovnováha ve Windows je ve výchozí podobě problematický proto, že je navržen pro CPU s méně komplexním řízením spotřeby, než má Ryzen. Z toho vyplývají oba výše zmíněné problémy. Ryzeny dokáží velmi rychle přepínat svou frekvenci, může to být až s granularitou 1 ms. S tím Windows úplně nepočítají a jelikož na starších CPU není přepnutí frekvence úplně jednoduchá a rychlá věc, Windows obvykle chvíli čekají, než zatížené jádro vyženou na plný výkon. V případě Ryzenu je ale mnohem výhodnější, pokud OS řízení frekvence více nechá na samotném CPU, což by opravené nastavení spotřeby mělo nyní dělat.
Stejného rázu je i problém s uspáváním jader. I to Windows dělají postaru s ohledem na dřívější CPU. „Core parking“, čili přepnutí nepotřebných jader do úsporného režimu („C stav“), výrazně šetří spotřebu. Ovšem dřívějším CPU tato operace chvíli trvá a probuzení také není rychlé. I v tomto případě má ovšem Ryzen řízení spotřeby modernější, takže oprava ponechá úsporné režimy přímo v režii CPU a na straně Windows jejich použití zruší. Neznamená to ovšem, že o tuto možnost šetřit energii v nečinnosti přicházíte.
Podobně jako u frekvence by měla používání úsporných C stavů zvládat sama řídící jednotka Ryzenu, která je dokáže aktivovat „akčněji“, opět až s rychlostí v řádu milisekund. Jejich používání je ovšem před operačním systémem skryto. Jádra se tváří, jako by byla v aktivním stavu („P stavy“), přitom ale mohou interně být uspaná až do úsporného stavu CC6, který je velmi blízko úplnému vypnutí. Tyto operace ale Ryzen bude moci provádět bez řízení ze strany operačního systému, což by mělo vést jak k menšímu dopadu na výkon, tak k lepší efektivitě jejich využití.
Určité negativum je, že OS nebo diagnostické nástroje nepoznají, že je úsporný režim (nebo třeba stav se sníženou frekvencí) používán. Nástroj vám tedy může hlásit, že má CPU i v nečinnosti stále vysokou frekvenci (třeba 3,6 GHz na Ryzenu 7 1800X). Ve skutečnosti jde ale jen o projev toho, že se jádro tváří jako by bylo na svém výchozím P stavu, i když interně v nečinnosti šetří energii a má takt mnohem nižší. Pokud tedy uvidíte v nějakém programu vysokou frekvenci „v idle“, neznamená to, že vám nefunguje šetření spotřeby. Opravený režim rovnováhy také nastavuje minimální frekvenci z pohledu Windows na 90 % základní úrovně, ale zde by mělo asi platit totéž. Tedy že jde jen o takt detekovaný zvenku, zatímco interně řídící jednotka nezávisle nastavuje takty sama a měla by při nečinnosti škálovat takt níž, než kolik je detekovaná úroveň.
Tyto změny by jinak měly být analogické k tomu, jak se Windows chovají k aktuálním procesorům Intelu. U Skylake a Kaby Lake (s technologií Intel Speed Shift) se také řízení spotřeby a frekvencí přesouvá z OS přímo do procesoru a údajně u nich Windows 10 také deaktivují Core Parking. Ryzen v tomto ohledu tedy nebude mít extrabuřty, lidově řečeno, spíš se jen vyrovná situace.
Oprava nejprve samostatně, později v ovladačích
Opravené nastavení spotřeby AMD vydá ve dvou krocích. Ve finále se stane přímo součástí ovladačů platformy AM4 (tedy těch, které instalujete kvůli čipsetu), které by vám měly samy do Windows doinstalovat nastavení spotřeby „AMD Ryzen Balanced“ a nastavit ho jako výchozí. Díky odlišenému názvu tak naštěstí bude snadné poznat, zda máte správné nastavení. Zatím se ale tato oprava ještě do balíků ovladačů nedostala a AMD ji vydalo na zkoušku samostatně.
Stahovat ji můžete odsud, po rozbalení archivu se nainstaluje dvojitým kliknutím. Poté ještě v nastavení napájení Windows zvolte režim „AMD Ryzen Balanced“. AMD chce nejprve takto získat nějaké ohlasy testujících osob, případně odhalit problémy před širší distribucí. Podle AMD by nastavení mělo výkon ve hrách obecně vrátit zhruba na úroveň režimu vysoký výkon. Při testování lze údajně vidět zlepšení ve hrách Battlefield 1, DOTA 2, GTA V, Crysis 3, Project Cars a dalších. Spotřeba by údajně měla být obdobná jako v běžném režimu rovnováha. Nezávislý test má například PC Perspective.
Optimalizace Total War: Warhammer
Z upraveného nastavení spotřeby má v neupřesněné míře profitovat také Total War: Warhammer. U tohoto titulu AMD ale také hlásí přímo optimalizace kódu hry, které by měly být začleněné v aktualizaci vydané 27. března. Tato nová verze má správně detekovat fyzická jádra a jejich dvě logická SMT vlákna, z čehož by měl zlepšený výkon zřejmě pramenit (podobně jako u DOTA 2; zatímco u Ashes of the Singularity ukazují velká procenta navíc asi i na další faktory). Oprava má podle AMD zlepšovat výkon nastavení High o 10,5 % a výkon nastavení Ultra, které je více limitované grafikou, o 7 %. Obojí platí pro rozlišení 1920 × 1080 bodů. Zlepšení už nezávisle potvrdil například francouzský web Hardware.fr.
Správné teploty v Ryzen Masteru
Poslední novinkou, kterou blog zmiňuje, je ještě vydání nové verze taktovacího nástroje AMD Ryzen Master. Ta již nevyžaduje zapnuté HPET na deskách s BIOSy založenými na verzi AGESA 1.0.0.4, o níž jsme v této souvislosti psali minulý týden. S touto verzí aplikace a patřičným BIOSem (až ho vaše deska dostane) tedy budete moci taktovat, aniž by vám HPET zase sráželo výkon získaný přetaktováním. Tato verze by mimochodem měla také ignorovat offset 20 stupňů Celsia, kterou přidávají Ryzeny 5 1600X, R7 1700X a R7 1800X ke své detekované teplotě. Jinými slovy by Ryzen Master nyní měl teplotu těchto CPU ukazovat správně, nikoliv přehnaně vysokou.