Ndị mmepe nke Mesa oru ngo mara ọkwa asambodo nke Khronos nzukọ nke rustical ọkwọ ụgbọ ala, nke gafeworo nke ọma ule niile site na CTS (Kronos Conformance Test Suite) set na a ghọtara dị ka zuru ezu dakọtara na OpenCL 3.0 nkọwapụta, nke na-akọwa API na. ndọtị nke asụsụ C maka ịhazi mgbakọ n'usoro ikpo okwu. Inweta asambodo na-enye gị ohere ikwuputa nrube isi n'ụkpụrụ ma jiri ụghalaahịa Khronos emetụtara. Emere ule a na sistemụ nwere Intel GPUs agbakwunyere ọgbọ iri na abụọ na-eji Gallium12D Iris ọkwọ ụgbọ ala.
Edere onye ọkwọ ụgbọ ala na Rust wee mepụta Karol Herbst sitere na Red Hat, onye na-etinye aka na mmepe Mesa, onye ọkwọ ụgbọ ala Nouveau na oghere OpenCL mepere emepe. Rusticle na-arụ ọrụ dị ka analọg nke Mesa's OpenCL frontend Clover ma mepụtakwara site na iji Gallium interface enyere na Mesa. A gbahapụrụ Clover ruo ogologo oge ma debe rustical ka ọ bụrụ nnọchi ya n'ọdịnihu. Na mgbakwunye na imezu ndakọrịta OpenCL 3.0, ọrụ Rusticle dị iche na Clover n'ịkwado ndọtị OpenCL maka nhazi onyonyo, mana ọ kwadobeghị usoro FP16. Iji mepụta njikọ maka Mesa na OpenCL, na-enye gị ohere ịkpọ ọrụ Rust site na koodu C na nke ọzọ, a na-eji rust-bindgen na Rusticle.
A nabatala koodu nkwado asụsụ Rust na onye ọkwọ ụgbọ ala n'ime Mesa mainstream a ga-enye ya na mwepụta Mesa 22.3, nke a na-atụ anya na mbubreyo Nọvemba. A ga-enwe nkwarụ na nkwado rust na ndabara na ọ ga-achọ ka a rụpụta ya na nhọrọ "-D gallium-rustical=true -Dllvm=enabled -Drust_std=2021" nke akọwapụtara nke ọma. Mgbe ị na-ewu ụlọ, ị ga-achọ onye na-achịkọta rustc, generator binding, LLVM, SPIRV-Tools, na SPIRV-LLVM-Translator dị ka ndabere ndị ọzọ.
Возможность использования языка Rust в проекте Mesa обсуждается с 2020 года. Из плюсов поддержки Rust упоминается повышение безопасности и качества драйверов за счёт избавления от типовых проблем при работе с памятью, а также возможность включения в состав Mesa сторонних наработок, таких как Kazan (реализация Vulkan на Rust). Из недостатков отмечается усложнение системы сборки, нежелание привязываться к пакетной системе cargo, расширение требований к сборочному окружению и необходимость включения компилятора Rust в сборочные зависимости, обязательные для построения ключевых компонентов рабочего стола в Linux.
Дополнительно можно отметить работу по развитию драйвера Nouveau, также проведённую Кэролом Хербстом. В драйвер Nouveau добавлена базовая поддержка OpenGL для GNU NVIDIA GeForce RTX 30xx на базе микроархитектуры Ampere, выпускаемых с мая 2020 года. Связанные с поддержкой новых чипов изменения войдут в состав ядра Linux 6.2 na Mesa 22.3.
isi: opennet.ru
