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

Компания Collabora обяви напредък в разработката на драйвера Tyr за ядрото на Linux, написан на езика Rust. Драйверът е проектиран да работи с GPU ARM Mali, при които се използва технологията CSF (Command 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