Tyr word verteenwoordig, Linux- 'n drywer vir die ARM Mali GPU, geskryf in Rust

Daniel Almeida, wat aan videokodek-ontwikkeling by Collabora werk, het op die ontwikkelaarsposlys geplaas Linux- die aanvanklike implementering van die Tyr-drywer vir ARM Mali GPU's wat Command Stream Frontend (CSF) tegnologie gebruik, soos die Mali G310, G510 en G710. Die drywerkode is in Rust geskryf en bestaan ​​uit net meer as 600 reëls kode. Werk aan die Tyr-drywer word gesamentlik deur Collabora, Arm en Google gedoen.

Die raamwerk vir die skep van die nuwe drywer gebruik komponente van die abstrakte rust_platform_driver-drywer en die Nova-drywer, ontwikkel vir NVIDIA GPU's, geskryf in Rust en gedeeltelik bygevoeg tot die 6.15-kern. Die funksionaliteit vir interaksie met die Mali GPU word oorgedra vanaf die bestaande Panthor (Direct Rendering Manager) DRM-drywer, geskryf in C. Die Tyr-drywer se uAPI is identies aan die Panthor-drywer se uAPI, wat die gebruik van bestaande gebruikersruimtekomponente daarmee moontlik maak.

Die CSF-tegnologie, wat sedert die 10de generasie van Mali GPU's gebruik word, is opmerklik vir die verskuiwing van sommige drywerfunksies na die firmware-kant en die gebruik van 'n nuwe model vir die organisering van werkuitvoering op die GPU. In GPU's met 'n CSF-koppelvlak word 'n model gebaseer op 'n opdragvloei gebruik met die skedulering van die opdragvloei-waglys aan die firmware-kant, in plaas van 'n model gebaseer op die stuur van 'n ketting van werke. Om die werk van die skeduleerder te organiseer, word 'n aparte Cortex-M7-mikrobeheerder in die GPU ingebou, en 'n spesiale opdraguitvoeringseenheid (Command Execution Unit) word voorsien om CSF-instruksies uit te voer.

Tyr se funksionaliteit is steeds agter die Panthor-drywer, maar die ontwikkelaars beoog om die gaping geleidelik te verminder totdat pariteit in drywervermoëns bereik word. Die ontbrekende kenmerke vereis dat addisionele abstraksies in die kern geïntegreer word om drywers in Rust te skep, dus sal die ontwikkeling van die Tyr-drywer gesinchroniseer word met die byvoeging van hierdie abstraksies tot die kern. Byvoorbeeld, die kern het nog nie die vermoëns vir geheuekartering in Rust-drywers vir GPU's nie, wat ontwikkel word in die GPUVM-pleisterstel, wat nog nie aangeneem is nie.

Bron: opennet.ru

Koop betroubare hosting vir werwe met DDoS-beskerming, VPS VDS-bedieners 🔥 Koop betroubare webwerfhosting met DDoS-beskerming, VPS VDS-bedieners | ProHoster