Spoločnosť Collabora oznámila pokrok vo vývoji ovládača Tyr pre jadro Linux, napísaného v jazyku Rust. Ovládač je navrhnutý na spoluprácu s GPU ARM Mali, ktoré používajú technológiu CSF (Súhrn príkazov na prednej strane), ako sú Mali G310, G510 a G710. Je zaznamenané, že Tyr dosiahol úroveň vhodnú na prevádzku pracovného prostredia GNOME, kompozitného servera Weston a hier na celú obrazovku, ako je SuperTuxKart. Výkon nového ovládača bol hodnotený ako porovnateľný s ovládačom Panthor, napísaným v jazyku C.


Kód ovládača Tyr bol prijatý do jadra Linux 6.18, ktorého vydanie sa očakáva na začiatku decembra. Ovládač zatiaľ nie je pripravený na trvalé použitie bežnými užívateľmi a považuje sa za experimentálny prototyp na testovanie abstrakcií pre vývoj ovládačov v jazyku Rust.
Pri vytváraní nového ovládača boli použité komponenty abstraktného ovládača rust_platform_driver a ovládača Nova, vyvíjaného pre GPU NVIDIA, napísaného v jazyku Rust a pridaného do jadra Linux 6.16. Funkcionalita na interakciu s GPU Mali bola prenesená z existujúceho DRM ovládača Panthor (Direct Rendering Manager), napísaného v jazyku C. uAPI ovládača Tyr je identické s uAPI ovládača Panthor, čo umožňuje použitie už existujúcich komponentov užívateľského priestoru.
Technológia CSF, používaná od 10. generácie GPU Mali, je pozoruhodná presunutím niektorých funkcií ovládača na stranu firmvéru a využitím novej modelovej organizácie vykonávania úloh na GPU. V GPU s rozhraním CSF namiesto modelu založeného na odosielaní reťazca úloh sa používa model založený na príkazovom toku s plánovaním frontu príkazového toku na strane firmvéru. Na organizáciu práce plánovača je v GPU zabudovaný samostatný mikrokontrolér Cortex-M7 a na vykonávanie príkazov CSF je určená špeciálna jednotka vykonávania príkazov (Command Execution Unit).
Zdroj: opennet.ru
