Valve sponzoruje open-source ovladače grafik Radeon pro Windows

Zatímco v operačním systému Windows je norma, že ovladače GPU poskytují výrobci ve formě klasického uzavřeného balíku softwaru, Linux na to není navržený a preferuje ovladače s open-source modelem. Teď se stalo něco, co asi nikdo moc nečekal – open source ovladač GPU pro grafiky Radeon z Linuxu je firmou Collabora portován na platformu Windows. Nicméně moc nejásejte, tento projekt je silně experimentální a jeho dosah bude asi jen malý.

Firma Valve už delší dobu sponzoruje a vyvíjí vlastní linuxový ovladač pro grafické karty Radeon poskytující akceleraci pojmenovaný RADV. Je použitý i v systému SteamOS na zařízení Steam Deck. Tento ovladač postupně nahradil předtím používaný ovladač AMDVLK, který vznikl přímo v AMD. A teď se právě ovladač RADV pod sponzorským krytím firmy Valve má dostat i na Windows. Firma sponzoruje vývojáře Collabory pracující na jeho přepsání pro Windows a integraci s modelem ovladačů WDDM2.

Zde je ale třeba upozornit, že RADV není ekvivalentem kompletních ovladačů grafik Radeon. Na Linuxu je GPU „stack“ rozdělen na několik částí – ovladač v jádru systému, který slouží k obsluze hardwaru a tvoří jakýsi backend, a části ovladače běžící v uživatelském systému, které nad ním implementují samotnou 3D akceleraci her a softwaru. RADV je součást druhého typu a specificky slouží k tomu, že poskytuje akceleraci API Vulkan. To na Linuxu nahrazuje OpenGL jako univerzální API, ale ve Windows ho používají jen některé vybrané hry, byla by tedy potřeba navíc ještě nějaké vrstvy přidávající podporu různých generací API DirectX.

Hlavně ale tento ovladač nemá onu jadernou část, se kterou spolupracuje, takže port RADV pro Windows od Collabory není kompletní funkční celek. Projekt proto pracuje na tom, aby se RADV naučil pracovat s oficiálním jaderným ovladačem Radeonů, který pro Windows distribuuje AMD. To znamená, že RADV pro Windows alespoň teď nenahrazuje celé ovladače AMD, ale je pro ně jenom doplňkem, který poskytuje alternativní implementaci Vulkanu.

Jak moc je něco takového třeba, toť otázka. Uvidíme, zda se třeba podaří z něj dostat lepší výkon než z dnešní podpory Vulkanu od AMD. Podle Collabory by výhoda byla v tom, že by Linux i Windows pokrýval jeden kód, takže by bylo víc sil k jeho vylepšování a ladění a mohlo by být snazší v něm opravovat problémy a podobně. To by ale platilo jen za předpokladu, že by přímo AMD chtělo tímto ovladačem nahradit svou vlastní implementaci Vulkanu používanou ve Windows. Ale že o to má zájem, to zatím nikde není řečeno, takže bychom s tím zatím nepočítali.

Prozatím ovladač RADV musí používat nedokumentovaná rozhraní, která mezi sebou používají komponenty oficiálního ovladače od AMD na základě reverzního inženýrství, což bude komplikované a může vést k neoptimálnímu fungování. Tato rozhraní se také mohou měnit mezi jednotlivými verzemi, protože nejsou míněná tomu, aby je využívali vývojáři externího softwaru. Toto řešení tak asi dlouho nebude dvakrát stabilní a spolehlivé.

Collabora už má nicméně i nějaké výsledky – firma se pochlubila tím, že se jí s ovladačem RADV už podařilo ve Windows 11 spustit hru Counter-Strike 2 na Radeonu RX 7900 XT. Nicméně firma dodává, že ovladač ještě neprojde konformačními testy, takže není s Vulkanem ještě plně kompatibilní, mimo další nedodělané věci. Blogpost, který historii a stav tohoto portu popisuje, dává celkem jasně najevo, že vyvíjet akceleraci tímto způsobem klade mnohé překážky a komplikace, takže z pohledu investované energie a času nejspíš nemůže jít o optimální cestu, jak akceleraci Vulkanu pro Windows vylepšovat.

Counter-Strike 2 běžící ve Windows na Radeonu RX 7900 XT přes open-source ovladač RADV (zdroj: Collabora)
Counter-Strike 2 běžící ve Windows na Radeonu RX 7900 XT přes open-source ovladač RADV (zdroj: Collabora)

Tento projekt proto nejspíš má budoucnost jen za té podmínky, že by se AMD rozhodlo stejně jako na Linuxu opustit vlastní implementaci Vulkanu a přejít na RADV zcela oficiálně, takže by pak jeho inženýři spolu s Collaborou přímo pracovali na integraci s existujícím jaderným ovladačem Radeonů, místo aby se pracovalo reverzním inženýrstvím a stylem pokus-omyl. Přímá spolupráce s AMD je asi také jediná cesta, jak by ovladač mohl mít zcela optimální výkon, protože některé pokročilejší operace (jako zero-copy práce s daty snímků) nejspíš nebudou možné, dokud je ovladač „hackem“ naroubovaným na oficiální software AMD bez jeho spolupráce.

Potenciální užitečnost pro Arm Windows

Jedna z výhod, které by toto mohlo teoreticky mít, je přenositelnost otevřeného ovladače na platformy, které AMD nepodporuje, ale kde systém Windows běží. Nyní by to byly jen procesory Arm, které by se výhledově mohly dostat do desktopových počítačů, nebo je můžete mít už dnes prostřednictvím serverových a embedded desek. Nedávno se na takovém hardwaru otevřela možnost používat grafické karty GeForce od Nvidie, ale není jasné, zda plánuje ovladač pro samostatná GPU Radeon vydat AMD. Pokud by to firma odmítla udělat, mohl by open source ovladač její oficiální podporu zastoupit.

Ale to jen tehdy, pokud by měl zároveň jadernou část, která by řešila samotné řízení GPU a jeho interakci s operačním systémem, nejen akceleraci Vulkanu, a tu zatím projekt otevřeného ovladače neumí a zatím ani neavizuje, že by měl plány se v kompletní ovladač GPU přeměnit. Byla by to mnohem větší práce, takže je téměř jisté, že takový pokus by neměl perspektivu.

Zatím je tedy tento projekt spíš kuriozitou. Předpokládáme, že reálný přínos nebude mít, pokud se se k němu nerozhodne oficiálně připojit AMD a nahradit ovladačem RADV svůj vlastní kód pro akceleraci Vulkanu.

Zdroje: Phoronix, Collabora

Jan Olšan, redaktor Cnews.cz


Contents

V Číně vznikly karty s čipsetem AMD přidávající linky PCIe a SATA

Ačkoliv čipové sady jsou považované za speciální komponentu, která má svoje místo na základní desce, v desktopových platformách AM4 a AM5 pro procesory AMD ve skutečnosti čipset není až tak kritický a je možné vyrábět desky bez něj. Čipsety jako B650 jsou jen můstky rozšiřující konektivitu PCIe 4.0 (a SATA). A jak se ukázalo, můžou to dělat i jako samostatná karta. Dokonce si s ní můžete přidat rozhraní M.2 nebo SATA i k procesoru Intel. Celý článok „V Číně vznikly karty s čipsetem AMD přidávající linky PCIe a SATA“ »

Co říká Instinct MI455X o podobě herních RDNA 5 GPU? [Rozbor]

AMD minulý měsíc odhalilo AI akcelerátory Instinct MI455X, které jsou založené na GPU architektuře CDNA 5. Význam to má i mimo oblast umělé inteligence a serverů, protože CDNA 5 už je příbuzná s architekturou RDNA 5, která přijde v příští generaci herních GPU Radeon. Podíváme se na to, co o RDNA 5 nové Instincty prozrazují a co dál o této grafické architektuře prosáklo ven. Zahrnuje to například jednu změnu, která na první pohled zaráží. Celý článok „Co říká Instinct MI455X o podobě herních RDNA 5 GPU? [Rozbor]“ »

Ryzen 7 9800X3D jde do notebooků, AMD chystá mobilní verzi

Jedna zvláštnost herních notebooků je, že ačkoliv jsou v nich dost výkonné grafické karty (třebaže výrazně pomalejší než v desktopech), velmi málo z nich má procesory AMD s tzv. 3D V-Cache. Tyto „X3D“ modely jsou přitom ve stolních PC hit a suverénně nejvýkonnější řešení pro hry, aktuálně tvořící svou vlastní třídu. Ale možná, že teď se X3D procesory začnou víc objevovat i v laptopech: AMD chystá model, kterým by se mohly prosadit. Celý článok „Ryzen 7 9800X3D jde do notebooků, AMD chystá mobilní verzi“ »

Komentáre (6) Pridať komentár

  1. No, k čemu je potřeba Vulkan na Windows, když většina her běží na DirectX? U linuxu je situace jiná, DirectX tam nejsou a proto je Vulkan jako nejbližší konkurent nutností.
    U Windows to fakt smysl nedává.

    1. Tak Vulkan dnes už často nahrazuje OpenGL (na kterém typicky běží valná část softwaru pro produkci grafiky), takže smysl na MSW rozhodně dává.

      1. No jasný, OpenGL už je řádně zastaralé a Vulkan dává smysl. Nicméně mně šlo o hry, DirectX je přeci jen dál než Vulkan, takže tam je Vulkan nadbytečný, pokud je hra v DirectX pro Windows. A Vulkan přeci svou implementaci pro Windows od AMD má.

        1. — „… mně šlo o hry, DirectX je přeci jen dál než Vulkan, takže tam je Vulkan nadbytečný, pokud je hra v DirectX pro Windows…“

          A čo napríklad ten RDR2 na GeForce? 🙂

        2. Situace se ale může změnit, MS může přijít s nějakou kontroverzní verzí Dx apod. Pak můžeme být za Vulkan rádi.

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *