Daniel Almeida, izay miasa amin'ny famolavolana codec video ao amin'ny Collabora, dia namoaka lahatsoratra tao amin'ny lisitry ny mailaka ho an'ny mpamorona. Linux- ny fampiharana voalohany ny mpamily Tyr ho an'ny GPU ARM Mali izay mampiasa ny teknolojia Command Stream Frontend (CSF), toy ny Mali G310, G510, ary G710. Voasoratra amin'ny Rust ny kaody mpamily ary misy andalana kaody maherin'ny 600. Ny asa amin'ny mpamily Tyr dia tanterahin'ny Collabora, Arm, ary Google miaraka.
Ny rafitra hamoronana ny mpamily vaovao dia mampiasa singa amin'ny mpamily rust_platform_driver abstract sy ny mpamily Nova, novolavolaina ho an'ny NVIDIA GPUs, nosoratana tamin'ny Rust ary nampiana ampahany tamin'ny kernel 6.15. Ny fampiasa amin'ny fifandraisana amin'ny Mali GPU dia nalaina avy amin'ny mpamily DRM Panthor (Direct Rendering Manager) efa misy, voasoratra ao amin'ny C. Ny uAPI an'ny mpamily Tyr dia mitovy amin'ny uAPI an'ny mpamily Panthor, izay mamela ny fampiasana ireo singa misy ny habaka mpampiasa miaraka aminy.
Ny teknolojia CSF, nampiasaina hatramin'ny taranaka faha-10 an'ny Mali GPUs, dia miavaka amin'ny fampandehanana ny fiasan'ny mpamily sasany amin'ny lafiny firmware sy ny fampiasana modely vaovao amin'ny fandaminana ny fanatanterahana asa amin'ny GPU. Ao amin'ny GPU miaraka amin'ny interface CSF, fa tsy modely mifototra amin'ny fandefasana rojo asa, modely mifototra amin'ny fikorianan'ny baiko no ampiasaina miaraka amin'ny fandaharam-potoana ny filaharana baiko eo amin'ny lafiny firmware. Mba handaminana ny asan'ny scheduler, dia misy microcontroller Cortex-M7 misaraka natsangana ao amin'ny GPU, ary misy vondrona mpanatanteraka baiko manokana (Command Execution Unit) mba hanatanterahana ny torolàlana CSF.
Ny fiasan'i Tyr dia mbola mijanona ao ambadiky ny mpamily Panthor, fa ny mpamorona dia mikasa ny hampihena tsikelikely ny elanelana mandra-pahatongan'ny fitoviana amin'ny fahaizan'ny mpamily. Ny endri-javatra tsy hita dia mitaky abstractions fanampiny ampidirina ao amin'ny kernel mba hamoronana mpamily ao amin'ny Rust, ka ny fampivoarana ny mpamily Tyr dia hifanaraka amin'ny fanampiana ireo abstractions ireo amin'ny kernel. Ohatra, ny kernel dia tsy mbola manana ny fahaiza-manao amin'ny fitadidiana sarintany amin'ny Rust mpamily ho an'ny GPU, izay novolavolaina tao amin'ny GPUVM patch set, izay mbola tsy noraisina.
Source: opennet.ru
