Den Tyr gëtt presentéiert, Linux- en Treiber fir d'ARM Mali GPU, geschriwwen a Rust

Den Daniel Almeida, deen un der Entwécklung vu Videocodecs bei Collabora schafft, huet op der Mailinglëscht fir Entwéckler gepost Linux- déi éischt Implementatioun vum Tyr-Treiber fir ARM Mali GPUs, déi d'Command Stream Frontend (CSF) Technologie benotzen, wéi zum Beispill de Mali G310, G510 a G710. Den Treibercode ass a Rust geschriwwen an ëmfaasst just iwwer 600 Zeilen Code. D'Aarbecht um Tyr-Treiber gëtt zesumme vu Collabora, Arm a Google duerchgefouert.

De Framework fir den neien Treiber ze kreĂ©ieren benotzt Komponenten vum abstrakten Treiber rust_platform_driver an dem Nova Treiber, deen fir NVIDIA GPUs entwĂ©ckelt gouf, a Rust geschriwwe gouf an deelweis am 6.15 Kernel bĂ€igefĂŒĂŒgt gouf. D'FunktionalitĂ©it fir d'Interaktioun mat der Mali GPU gĂ«tt vum existĂ©ierenden Panthor (Direct Rendering Manager) DRM Treiber portĂ©iert, deen a C geschriwwe gouf. D'uAPI vum Tyr Treiber ass identesch mat der uAPI vum Panthor Treiber, wat et erlaabt, existĂ©ierend User Space Komponenten domat ze benotzen.

D'CSF-Technologie, dĂ©i zĂ«nter der 10. Generatioun vu Mali GPUs benotzt gĂ«tt, ass bemierkenswĂ€ert dofir, datt se e puer Treiberfunktiounen op d'Firmware-SĂ€it verlagert huet an en neit Modell fir d'Organisatioun vun der AarbechtsausfĂ©ierung op der GPU benotzt huet. Bei GPUs mat enger CSF-Interface gĂ«tt amplaz vun engem Modell basĂ©iert op der Sendung vun enger Aarbechtskette e Modell basĂ©iert op engem Kommandofloss mat Planung vun der Kommandofloss-Queue op der Firmware-SĂ€it benotzt. Fir d'Aarbecht vum Scheduler z'organisĂ©ieren, ass e separaten Cortex-M7 Mikrocontroller an der GPU agebaut, an eng speziell KommandoausfĂ©ierungseenheet (Command Execution Unit) ass zur VerfĂŒgung gestallt fir CSF-Instruktiounen auszefĂ©ieren.

D'FunktionalitĂ©it vum Tyr lĂ€it nach Ă«mmer hannert dem Panthor-Treiber, awer d'EntwĂ©ckler wĂ«llen d'LĂŒck graduell reduzĂ©ieren, bis d'ParitĂ©it an den TreiberfĂ€egkeeten erreecht ass. DĂ©i fehlend Funktiounen erfuerderen zousĂ€tzlech Abstraktiounen, dĂ©i an de Kernel integrĂ©iert musse ginn, fir Treiber a Rust ze kreĂ©ieren, sou datt d'EntwĂ©cklung vum Tyr-Treiber mat der Zousaz vun dĂ«sen Abstraktiounen am Kernel synchronisĂ©iert gĂ«tt. Zum Beispill huet de Kernel nach net d'MĂ©iglechkeeten fir Memory Mapping a Rust-Treiber fir GPUs, dĂ©i am GPUVM Patch Set entwĂ©ckelt ginn, deen nach net adoptĂ©iert gouf.

Source: opennet.ru

Kaaft zouverlĂ€sseg Hosting fir Site mat DDoS Schutz, VPS VDS Server đŸ”„ Kaaft zouverlĂ©issegt WebsĂ€ithosting mat DDoS-Schutz, VPS VDS Server | ProHoster