Tyr është paraqitur, Linux- një drajver për GPU-në ARM Mali, i shkruar në Rust

Daniel Almeida, i cili punon në zhvillimin e kodekëve video në Collabora, postoi në listën e email-eve të zhvilluesve Linux- implementimi fillestar i drajverit Tyr për GPU-të ARM Mali që përdorin teknologjinë Command Stream Frontend (CSF), të tilla si Mali G310, G510 dhe G710. Kodi i drajverit është shkruar në Rust dhe përfshin pak më shumë se 600 rreshta kodi. Puna në drajverin Tyr po kryhet bashkërisht nga Collabora, Arm dhe Google.

Korniza për krijimin e drajverit të ri përdor komponentë të drajverit abstrakt rust_platform_driver dhe drajverit Nova, të zhvilluar për GPU-të NVIDIA, të shkruar në Rust dhe të shtuar pjesërisht në kernelin 6.15. Funksionaliteti për bashkëveprimin me GPU-në Mali është portuar nga drajveri ekzistues DRM Panthor (Direct Rendering Manager), i shkruar në C. uAPI i drajverit Tyr është identik me uAPI-në e drajverit Panthor, i cili lejon përdorimin e komponentëve ekzistues të hapësirës së përdoruesit me të.

Teknologjia CSF, e përdorur që nga gjenerata e 10-të e GPU-ve Mali, është e dukshme për zhvendosjen e disa funksioneve të drajverit në anën e firmware-it dhe përdorimin e një modeli të ri për organizimin e ekzekutimit të punës në GPU. Në GPU-të me një ndërfaqe CSF, në vend të një modeli të bazuar në dërgimin e një zinxhiri punimesh, përdoret një model i bazuar në një rrjedhë komandash me planifikimin e radhës së rrjedhës së komandave në anën e firmware-it. Për të organizuar punën e planifikuesit, një mikrokontrollues i veçantë Cortex-M7 është integruar në GPU, dhe një njësi e veçantë ekzekutimi komandash (Njësia e Ekzekutimit të Komandave) është siguruar për të ekzekutuar udhëzimet CSF.

Funksionaliteti i Tyr mbetet ende prapa drajverit Panthor, por zhvilluesit synojnë ta zvogëlojnë gradualisht hendekun derisa të arrihet barazia në aftësitë e drajverit. Karakteristikat që mungojnë kërkojnë që abstraksione shtesë të integrohen në bërthamë për të krijuar drajverë në Rust, kështu që zhvillimi i drajverit Tyr do të sinkronizohet me shtimin e këtyre abstraksioneve në bërthamë. Për shembull, bërthama nuk ka ende aftësitë për hartëzimin e kujtesës në drajverët Rust për GPU-të, të cilat po zhvillohen në setin e patch-eve GPUVM, i cili ende nuk është miratuar.

Burimi: opennet.ru

Bleni njĂ« host tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, serverĂ« VPS VDS đŸ”„ Bleni hosting tĂ« besueshĂ«m tĂ« faqeve tĂ« internetit me mbrojtje DDoS, servera VPS VDS | ProHoster