برنامج تشغيل Rusticl المفتوح معتمد ومتوافق مع OpenCL 3.0

أعلن مطورو مشروع Mesa عن شهادة منظمة Khronos لبرنامج التشغيل Rusticl، الذي اجتاز بنجاح جميع الاختبارات من مجموعة CTS (Kronos Conformance Test Suite) وتم الاعتراف به على أنه متوافق تمامًا مع مواصفات OpenCL 3.0، التي تحدد واجهات برمجة التطبيقات و امتدادات لغة C لتنظيم الحوسبة المتوازية عبر الأنظمة الأساسية. يتيح لك الحصول على الشهادة الإعلان رسميًا عن الامتثال للمعايير واستخدام العلامات التجارية المرتبطة بـ Khronos. تم إجراء الاختبار على نظام مزود بوحدات معالجة رسوميات Intel مدمجة من الجيل الثاني عشر باستخدام برنامج تشغيل Gallium12D Iris.

تمت كتابة برنامج التشغيل بلغة Rust وتم تطويره بواسطة Karol Herbst من Red Hat، الذي يشارك في تطوير Mesa وبرنامج التشغيل Nouveau والمكدس المفتوح OpenCL. تعمل Rusicle كنظير لواجهة OpenCL الأمامية من Mesa Clover وتم تطويرها أيضًا باستخدام واجهة Gallium المتوفرة في Mesa. لقد تم التخلي عن Clover لفترة طويلة وتم وضع Rusticl كبديل له في المستقبل. بالإضافة إلى تحقيق التوافق مع OpenCL 3.0، يختلف مشروع Rustical عن Clover في دعم امتدادات OpenCL لمعالجة الصور، لكنه لا يدعم حتى الآن تنسيق FP16. لإنشاء روابط لـ Mesa وOpenCL، مما يسمح لك باستدعاء وظائف Rust من كود C والعكس، يتم استخدام Rust-bindgen في Rusticle.

تم قبول رمز دعم لغة Rust وبرنامج التشغيل Rusticl في Mesa السائد وسيتم تقديمهما في إصدار Mesa 22.3 المتوقع في أواخر نوفمبر. سيتم تعطيل دعم الصدأ والروستيكل افتراضيًا وسيتطلب إنشاءًا يتضمن خيارات "-Dgalium-rusticl=true -Dllvm=enabled -Drust_std=2021" المحددة بشكل صريح. عند البناء، سوف تحتاج إلى مترجم Rustc، ومولد ربط Bindgen، وLLVM، وSPIRV-Tools، وSPIRV-LLVM-Translator كتبعيات إضافية.

تمت مناقشة إمكانية استخدام لغة Rust في مشروع Mesa منذ عام 2020. من بين مزايا دعم Rust، يتم ذكر زيادة الأمان وجودة برامج التشغيل بسبب التخلص من المشكلات النموذجية عند العمل مع الذاكرة، فضلاً عن القدرة على تضمين تطورات الطرف الثالث في Mesa، مثل Kazan (تطبيق Vulkan) في الصدأ). تشمل العيوب التعقيد المتزايد لنظام البناء، والإحجام عن الارتباط بنظام حزمة الشحن، وتوسيع المتطلبات لبيئة البناء، والحاجة إلى تضمين مترجم Rust في تبعيات البناء المطلوبة لبناء مكونات سطح المكتب الرئيسية على Linux.

بالإضافة إلى ذلك، يمكننا أن نلاحظ العمل على تطوير برنامج التشغيل Nouveau، الذي قامت به أيضًا كارول هيربست. أضاف برنامج التشغيل Nouveau دعم OpenGL الأساسي لـ GNU NVIDIA GeForce RTX 30xx استنادًا إلى بنية Ampere الدقيقة، التي تم إصدارها منذ مايو 2020. سيتم تضمين التغييرات المتعلقة بدعم الرقائق الجديدة في Linux 6.2 kernel وMesa 22.3.

المصدر: opennet.ru

إضافة تعليق