DRM Power Saving Policy v Linuxu 6.12, Mesa 24.2 a informace k novým CPU

2. 8. 2024
Doba čtení: 4 minuty

Sdílet

Lisa Su EPYC 3
Autor: AMD
Lisa Su EPYC 3
Na trh během pár týdnů zamíří mnoho produktů s novými generacemi CPU AMD a Intel. Některé potřebné prvky podpory Linux 6.11 nestihly a objeví se až v 6.12. Podívejme se na pár věcí, které jsou chystány.

Zavedení DRM „Power Saving Policy“ v Linuxu 6.12

Další z novinek chystaných pro Linux 6.12 je v rámci vývojové větve drm-misc-next sada patchů zavádějících podporu tzv. Power Saving Policy v rámci DRM (Direct Rendering Manager), a to pro konektory grafických výstupů, zpočátku na kartách obsluhovaných ovladačem AMDGPU.

Tato nová „Power Saving Policy“ bude výhledově rozšířena na další grafické karty a jádra, stane se standardní součástí grafického subsystému jádra a postará se o komunikaci potřebných informací mezi kompozitory (desktopy) a ovladači o tom, jaké vlastnosti úspory energie lze použít, aby byla zachována dobrá uživatelská zkušenost s daným desktopem.

V tuto chvíli počáteční implementace je v rámci politik podporována indikace toho, zdali ovladač vyžaduje nějakou barevnou přesnost, na níž by aktivace úsporných mechanismů mohla mít negativní dopad. Další politikou bude volba pro nastavení vyžadující přístup s nízkou latenci, vhodné pro displeje, u nichž lze latenci (zpoždění zobrazení) negativně ovlivnit používanými mechanismy připojení, například Panel Self Refresh (PSR).

Tato věc byla vyvíjena ve spolupráci s vývojáři desktopového prostředí KDE (a dalších prostředí). Počáteční podpora v rámci AMDGPU je dána prostě tím, že na ovladačové části pracovali vývojáři AMD. Podpora v AMDGPU se tedy objevuje, v rámci KDE se řeší merge request Xavera Hugla u kompozitoru KWin, který podporu na jeho úrovni implementuje – zde je aktuálně nastaven milestone na vydání KDE Plasma 6.2.

Mesa 24.2-rc3 přináší opravy pro zatím nevydané grafiky Intel Xe2

Před několika desítkami hodin jsme psali o tom, že <podpora CPU generace Intel Lunar Lake a grafických karet Battlemage, obě s jádry typu Xe2, bude nejdřív v Linuxu 6.12, někdy v listopadu tohoto roku.Víme čerstvě, že Lunar Lake bude představen už 3. září, tedy za měsíc. Představení neznamená automaticky dostupnost produktů na trhu, v tomto má Intel v posledních letech spíše zpoždění, lze tedy předpokládat, že předvánoční trh nabídne dostatek notebooků s Lunar Lake, ale že podpora Xe2 iGPU bude až v Linuxu 6.12, nebude nejspíš v září/říjnu zásadní komplikací.

S tím vším úzce souvisí projekt Mesa, jehož příští dílčí verze 24.2 je připravována na tento měsíc a na světě Łuž je RC3 přinášející nejnovější opravy v jejím kódu. Na podpoře Xe2 v rámci Mesa se v Intelu pracuje už více než rok. Mesa bude na vydání Xe2 připravena dostatečně slušně, nejnovější opravy zahrnují režim SIMD16 pro fast-clear kernel, vypnutí legacy CCS, opravy pro protected ISL masku – všechny opravy v rámci Xe2 připravil Jianxun Zhang z Intelu.

Kromě těchto novinek v rámci ovladače Xe přinese Mesa 24.2 i opravy pro ovladač i915, který se dosud používá jako výchozí (generování velkých mipmap či max_lod pro mipmap-sampling), ale „jeho dny už jsou sečteny“… výhledově. RC3 dále opravuje chyb v OpenCL ovladači Rusticl, několik věcí u „softwarového GPU“ LLVMpipe, dvě drobnosti v EGL pro Haiku OS.

Pokud byste nový notebook letos ke konci roku vyhlíželi, pak se sluší dodat, že jakkoli solidním skokem vpřed bude generace Lunar Lake s Xe2, zdá se, že AMD Strix Point bude více než solidní konkurencí zejména proto, že na trh již tyto nové Ryzeny AI generace Zen 5 zamířily. Phoronix již prohnal testy jak stroj s Ryzen AI 9 HX 370, tak stroj s Ryzen AI 9 365 (včetně srovnání Windows 11 a Ubuntu 24.04 s jádrem 6.10).

Úpravy v topologii CPU u AMD

AMD kromě řady jiných věcí připravuje pro linuxové jádro patche v rámci ovladače AMD P-State korigující topologii CPU pro generaci Zen 5 (AMD Heterogeneous Core Topology) u procesorů kombinujících CPU jádra Zen 5 a jejich „kondenzovanou variantu“ Zen 5c. Tyto patche si přímo říkají o budoucí otestování, ale jelikož kód ještě nebyl začleněn, tak Phoronix přišel s kratičkým preview na to, co se chystá

Dlužno dodat, že zatímco Intel kombinují „malá/Atomová“ jádra s „velkými klasickými“, kdy ta první neumí HT a AVX-512, zatímco druhá ano (což způsobuje řadu komplikací a donutilo to Intel vypnout AVX-512 od generace Alder Lake výše), tak u AMD je rozdíl mezi Zen 5 a Zen 5c v podstatě nepodstatný, přesto skýtající prostor pro softwarové optimalizace. AMD umí jak HT (tedy SMT, zatímco Intel HT u Arrow Lake opouští), tak AVX-512 (v kvalitě, na kterou Intel nikdy nedosáhl).

Patche se nestihly dokončit včas pro začleňovací okno Linuxu 6.11, pročež nejdříve čekejme tuto novinku v rámci jádra 6.12 – s touto verzí jádra ale očekávejme, že Zen 5 CPU pojedou „optimálněji“ a budou též adekvátně šetřit energii v návaznosti na potřebu jejich využití. 

Zatím však Phoronix nenaměřil nějaký zásadní pozitivní vliv na výkon CPU (rozptyl 1 až 2 %, v pásmu nepřesnosti měření) a konstatuje, že s těmito patchi nepozoruje na nových Ryzenech AI žádné rozdíly mezi oběma typy jader co se týče maximální frekvence a nejvýkonnějšího stavu (dle hodnoty ACPI CPPC), vše funguje očekávaným způsobem skrze oba typy procesorových jader, tedy s posledními patchi je v rámci ovladače AMD P-state korektně použita hodnota amd_pstate_highest_perf, konkrétně tedy maximální priorita 196 pro jádra Zen 5 a nižší priorita 132 pro Zen 5c a tomu odpovídají i systému reportované maximální frekvence obou typů jader, konkrétně 5,09 GHz pro Zen 5, resp. 3,40 GHz pro Zen 5c. Vypadá to však, že Linux má u jednojádrové zátěže tendenci správně posílat úlohy na výkonnější jádra Zen 5.

Zdali další postupující optimalizace přinesou viditelnější pozitivní vývoj, se teprve ukáže.

Autor článku

Příznivec open-source rád píšící i o ne-IT tématech. Odpůrce softwarových patentů a omezování občanských svobod ve prospěch korporací.