மீசா திட்டத்திற்காக உருவாக்கப்பட்டு வரும் ரஸ்டில் எழுதப்பட்ட ஒரு புதிய ஓபன்சிஎல் செயல்படுத்தல் (rusticl), க்ரோனோஸ் கூட்டமைப்பால் ஓபன்சிஎல் 3.0 விவரக்குறிப்புடன் இணக்கத்தன்மையை மதிப்பிடுவதற்குப் பயன்படுத்தப்படும் குரோனோஸ் கன்ஃபார்மன்ஸ் டெஸ்ட் சூட் (CTS) ஐ வெற்றிகரமாகக் கடந்துவிட்டது. இந்த திட்டத்தை ரெட் ஹேட்டின் கரோல் ஹெர்ப்ஸ்ட் உருவாக்கி வருகிறார், அவர் மீசா, நோவியோ இயக்கி மற்றும் திறந்த மூல ஓபன்சிஎல் ஸ்டேக் ஆகியவற்றின் வளர்ச்சியில் ஈடுபட்டுள்ளார். ரஸ்டிக்லில் ஓபன்சிஎல் 3.0 ஆதரவின் அதிகாரப்பூர்வ சான்றிதழ் தொடர்பாக அவர் க்ரோனோஸைத் தொடர்பு கொண்டுள்ளார்.
12வது தலைமுறை இன்டெல் GPU (ஆல்டர் லேக்) கொண்ட ஒரு கணினியில் சோதனைகள் நிறைவடைந்தன. இந்த வேலை ஐரிஸ் மேசா இயக்கியைப் பயன்படுத்தி செய்யப்பட்டது, ஆனால் இந்த திட்டம் NIR ஷேடர்களின் தட்டச்சு செய்யப்படாத இடைநிலை பிரதிநிதித்துவத்தை (IR) பயன்படுத்தும் பிற மேசா இயக்கிகளுடனும் வேலை செய்ய வேண்டும். மீசாவுடன் ரஸ்டிக்லுக்கான இணைப்பு கோரிக்கை தற்போது மதிப்பாய்வில் உள்ளது, மேலும் மீசாவில் ரஸ்டிக் குறியீட்டை இணைப்பது குறித்து இன்னும் முடிவு எடுக்கப்படவில்லை. மீசாவின் பிரதான விநியோகத்தில் ரஸ்டிக்ல் ஒருங்கிணைக்கப்படும் வரை, கட்டமைப்பிற்கு ஒரு தனி கிளையைப் பயன்படுத்தலாம். தொகுக்கும்போது, பின்வரும் கட்டமைப்பு அளவுருக்கள் குறிப்பிடப்பட வேண்டும்: -Dgallium-rusticl=true -Dopencl-spirv=true -Dshader-cache=true -Dllvm=true.
Rusticl என்பது Mesa-வின் தற்போதைய OpenCL முன்பக்கமான Clover-க்கு மாற்றாகும், மேலும் இது Mesa-வின் Gallium இடைமுகத்தைப் பயன்படுத்தியும் உருவாக்கப்பட்டது. Clover நீண்ட காலமாக கைவிடப்பட்டுள்ளது, மேலும் rusticl அதன் எதிர்கால மாற்றாக நிலைநிறுத்தப்பட்டுள்ளது. OpenCL 3.0 இணக்கத்தன்மையை அடைவதோடு மட்டுமல்லாமல், Rusticl, பட செயலாக்கத்திற்கான OpenCL நீட்டிப்புகளை ஆதரிப்பதில் Clover-இலிருந்து வேறுபடுகிறது, ஆனால் இன்னும் FP16 வடிவமைப்பை ஆதரிக்கவில்லை.
Для генерации биндингов для Mesa и OpenCL, позволяющих вызывать Rust-функции из кода на Си и наоборот, в Rusticl задействован rust-bindgen. Возможность использования языка Rust в проекте Mesa обсуждается с 2020 года. Из плюсов поддержки Rust упоминается повышение безопасности и качества драйверов за счёт избавления от типовых проблем при работе с памятью, а также возможность включения в состав Mesa сторонних наработок, таких как Kazan (реализация Vulkan на Rust). Из недостатков отмечается усложнение системы сборки, нежелание привязываться к пакетной системе cargo, расширение требований к сборочному окружению и необходимость включения компилятора Rust в сборочные зависимости, обязательные для построения ключевых компонентов рабочего стола в Linux.
ஆதாரம்: opennet.ru
