Masu haɓaka aikin Mesa sun sanar da takaddun shaida ta ƙungiyar Khronos na direban rusticl, wanda ya sami nasarar cin nasarar duk gwaje-gwaje daga saitin CTS (Kronos Conformance Test Suite) kuma an gane shi da cikakken jituwa tare da ƙayyadaddun OpenCL 3.0, wanda ke bayyana APIs da kari na yaren C don tsara tsarin kwamfuta a layi daya. Samun takaddun shaida yana ba ku damar ayyana bin ƙa'idodi a hukumance da amfani da alamun kasuwancin Khronos masu alaƙa. An yi gwajin a kan tsarin tare da haɗin gwiwar ƙarni na 12 Intel GPUs ta amfani da direban Gallium3D Iris.
An rubuta direban a cikin Rust kuma Karol Herbst daga Red Hat, wanda ke da hannu wajen haɓaka Mesa, direban Nouveau da OpenCL bude tari. Rusticle yana aiki azaman misalin Mesa's OpenCL frontend Clover kuma an haɓaka shi ta amfani da ƙirar Gallium da aka bayar a Mesa. An yi watsi da Clover na dogon lokaci kuma an sanya rusticl a matsayin maye gurbinsa na gaba. Baya ga samun daidaituwar OpenCL 3.0, aikin Rusticle ya bambanta da Clover wajen tallafawa kari na OpenCL don sarrafa hoto, amma har yanzu bai goyi bayan tsarin FP16 ba. Don ƙirƙirar ɗaure don Mesa da OpenCL, yana ba ku damar kiran ayyukan Rust daga lambar C kuma akasin haka, ana amfani da tsatsa-bindgen a cikin Rusticle.
An karɓi lambar tallafin harshen Rust da direban rusticl cikin babban tsarin Mesa kuma za a ba da shi a cikin sakin Mesa 22.3, ana tsammanin a ƙarshen Nuwamba. Taimakon tsatsa da tsatsa za a kashe ta tsohuwa kuma zai buƙaci ginawa tare da zaɓin "-D gallium-rustical=gaskiya -Dllvm=enabled -Drust_std=2021" da aka ƙayyade. Lokacin ginawa, zaku buƙaci mai tara rustc, janareta mai ɗaure, LLVM, SPIRV-Tools, da SPIRV-LLVM-Translator azaman ƙarin abin dogaro.
Возможность использования языка Rust в проекте Mesa обсуждается с 2020 года. Из плюсов поддержки Rust упоминается повышение безопасности и качества драйверов за счёт избавления от типовых проблем при работе с памятью, а также возможность включения в состав Mesa сторонних наработок, таких как Kazan (реализация Vulkan на Rust). Из недостатков отмечается усложнение системы сборки, нежелание привязываться к пакетной системе cargo, расширение требований к сборочному окружению и необходимость включения компилятора Rust в сборочные зависимости, обязательные для построения ключевых компонентов рабочего стола в Linux.
Дополнительно можно отметить работу по развитию драйвера Nouveau, также проведённую Кэролом Хербстом. В драйвер Nouveau добавлена базовая поддержка OpenGL для GNU NVIDIA GeForce RTX 30xx на базе микроархитектуры Ampere, выпускаемых с мая 2020 года. Связанные с поддержкой новых чипов изменения войдут в состав ядра Linux 6.2 da Mesa 22.3.
source: budenet.ru
