20 let staré linuxové řešení stále zpomaluje systémy AMD

20 let staré linuxové řešení stále zpomaluje systémy AMD
Zvětšení / Serverový čip Epyc druhé generace AMD, možná na něm běžel linuxový kód z éry 2002, který jej zpomaloval.

Getty Images

AMD přišlo Od roku 2002 dlouhá cestaale linuxové jádro stále zachází s moderními Threadrippery jako se systémy z éry Athlonu – alespoň v jednom ohledu, který potenciálně způsobuje zpoždění.

Nedávno inženýr AMD Prateek Nayak Odešlete opravu nečinným ovladačům procesoru Linux Tím by se „obešlo falešné čekání na procesory založené na mikroarchitektuře Zen“. Když byla v roce 2002 do linuxového jádra přidána podpora ACPI – kterou napsal Andy Grover a Linus Torvalds – zahrnovalo to „fiktivní model čekání“. Systém v podstatě čte data bez jiného účelu, než aby zdržel další instrukci, dokud se CPU úplně nezastaví pomocí příkazu STPCLK#. To umožnilo určitou úsporu energie a kompatibilitu během prvních dnů ACPI, kdy některé čipy nezůstaly nečinné, když by se to očekávalo.

Dnešní čipy AMD na bázi Zen ale toto řešení nepotřebují a jak psal Nayak, škodí jim to, alespoň v konkrétních zátěžích na Linuxu. Testování s pracovní zátěží Instruction-Based Sampling (IBS) ukazuje, že „významné množství času se stráví v fiktivním procesu, který je nesprávně vypočítán jako bydliště ve státě C“. CPU, když vidí veškerou tuto nízkonapěťovou fantomovou práci, může přejít do hlubšího a pomalejšího stavu C, takže CPU trvá déle, než se „probudí“, zejména v úlohách, které vyžadují hodně přepínání mezi zaneprázdněným a nečinným stavem.

Nayak provedl testy v tbench Na dvousocketovém Zen3 proti linuxovému jádru, kernelu se zcela zakázaným stavem C2 a kernelu s odladěným fiktivním procesem čekání. Jeho opravená verze zaznamenala 1390procentní nárůst minimální přenosové rychlosti MB/s a 51procentní nárůst průměrného MB/s napříč jádrem, což je často jen o málo méně než úplné deaktivace C2.

READ  Řada Galaxy S21 dostává svou druhou aktualizaci na Android 13 s listopadovou bezpečnostní záplatou

Systémy Intel se vyhnuly staršímu prokletí AMD, protože používají systém založený na MWAIT již nejméně deset let, Podle blogu Phoronix. To vedlo k Hotfix poskytl Dave Hansen z Intelu. Jeho řešením bylo omezit „falešné čekání“ na systémy Intel, protože by to neovlivnilo „moderní vzdálené systémy Intel“, a přidat komentáře k nečinným diskům v jádře, které vysvětlují, co se děje – a povzbudit čtenáře, aby „zvážili přesunutí váš systém na modernější nečinný mechanismus.

Pokud bude tento týden odeslána oprava hotfix k odstranění nebo omezení „fantomového čekání“, pravděpodobně to způsobí, že jádro Linuxu 6.0, Torvalds očekává odeslání příští týden.

You May Also Like

About the Author: Danielle Brown

"Přátelský průkopník popkultury. Hodně padá. Sociální média geek. Obecný fanatik do kávy. Televizní nadšenec. Potížista."

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *