В Tyr, написан на Rust драйвер за GPU ARM Mali, е осигурена съвместимост с GNOME

Компания Collabora обяви напредък в разработката на драйвера Tyr за ядрото на Linux, написан на езика Rust. Драйверът е проектиран да работи с GPU ARM Mali, в които се прилага технологията CSF (Сommand Stream Frontend), като Mali G310, G510 и G710. Отбелязва се, че Tyr е достигнал ниво, подходящо за подсигуряване на работната среда GNOME, композитния сървър Weston и екранни игри, като SuperTuxKart. Производителността на новия драйвер е оценена на нивото на драйвера Panthor, написан на езика C.

В Tyr, написан на Rust драйвер за GPU ARM Mali, е осигурена съвместимост с GNOME
В Tyr, написан на Rust драйвер за GPU ARM Mali, е осигурена съвместимост с GNOME

Кодът на драйвера Tyr е приет в ядрото на Linux 6.18, чийто релиз се очаква в началото на декември. Въпреки това, драйверът все още не е готов за постоянно използване от обикновените потребители и се разглежда като експериментален прототип за тестване на абстракции за разработка на драйвери на езика Rust.

Като основа при създаването на новия драйвер са използвани компоненти на абстрактния драйвер rust_platform_driver и драйвера Nova, разработван за GPU NVIDIA, написан на Rust и добавен в ядрото на Linux 6.16. Функционалността за взаимодействие с GPU Mali е портната от съществуващия DRM-драйвер Panthor (Direct Rendering Manager), написан на езика C. UAPI на драйвера Tyr е идентично на uAPI на драйвера Panthor, което позволява използването на вече съществуващи компоненти в пространството на потребителския интерфейс.

Технологията CSF, прилагана от 10-то поколение GPU Mali, е забележителна с изнасянето настрана на фърмуера на някои функции на драйвера и използването на нова моделна организация на работата на GPU. В GPU с интерфейс CSF, вместо модела, основан на изпращането на задачи, се прилага модел, основан на поток от команди с планиране на опашка на потока от команди на страната на фърмуера. За организацията на работата на планировщика в GPU е вграден отделен микроконтролер Cortex-M7, а за изпълнение на инструкциите CSF е предвиден специален блок за изпълнение на команди (Command Execution Unit).

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster