تعلن Collabora عن وصول NVK ، برنامج تشغيل Vulkan مفتوح المصدر لـ NVIDIA

NVK

NVK هو برنامج تشغيل Vulkan جديد مفتوح المصدر لأجهزة رسومات NVIDIA

قبل بضعة أيام كشف النقاب عن Collabora من خلال مدونة نشر الأخبار دمج مشغل NVK في الفرع الرئيسي لمشروع ميسا وأنه سيتم تضمينه أيضًا كسائق تجريبي في الإصدار 23.3 من Mesa.

NVK ، هو برنامج تشغيل مفتوح جديد مع تطبيق Vulkan Graphics API لبطاقات الفيديو NVIDIA. تم إنشاء برنامج التشغيل بواسطة فريق يضم Karol Herbst (مطور Nouveau في Red Hat) و David Airlie (مشرف النظام الفرعي DRM في Red Hat) و Jason Ekstrand (مطور Mesa النشط في Collabora).

فيما يتعلق بتطوير NVK ، يذكر أن هذا من أجل إنشاء برنامج تشغيل مرجعي جديد لـ Vulkan لـ Mesa، الذي يمكن استعارته رمزه عند إنشاء وحدات تحكم أخرى.

للقيام بذلك ، عندما نعمل على برنامج تشغيل NVK ، نحاول أن نأخذ في الاعتبار جميع الخبرات المتاحة في تطوير برنامج تشغيل Vulkan ، والحفاظ على قاعدة الكود في الشكل الأمثل ، وتقليل نقل الكود من برامج تشغيل Vulkan الأخرى ، من خلال القيام بما يجب القيام به. للحصول على عمل مثالي وعالي الجودة ، وعدم نسخ الطريقة التي يتم بها بشكل أعمى في برامج التشغيل الأخرى.

ومن الجدير بالذكر أنه بالرغم من أن المتحكم يتم تضمين NVK في Mesa ، ويستمر تطوير برنامج التشغيل ولم يتم تنفيذ جميع الوظائف المطلوبة. برنامج التشغيل متوافق مع Vulkan 1.0 API ، لكنه لم يجتاز جميع اختبارات التوافق بعد ولديه مشكلات في الأداء. ومع ذلك ، تعمل بعض الألعاب بالفعل مع برنامج التشغيل الجديد ، حتى عند استخدام طبقة DXVK.

لكي تعمل وحدة التحكم على نحو فعال، تغييرات Linux kernel المتعلقة بملحق Nouveau DRM Driver API مطلوبة. ترجع الحاجة إلى تغيير واجهة برمجة التطبيقات على مستوى النواة إلى أن واجهة برمجة تطبيقات برنامج تشغيل Nouveau DRM مصممة في البداية لتنفيذ OpenGL وتفتقر إلى الأساسيات اللازمة للتشغيل الفعال لمحركات Vulkan على Mesa.

على وجه الخصوص ، يجب إضافة القدرة على إدارة مساحة العنوان الافتراضية ، نظرًا لأن العمليات مع المخازن المؤقتة للكائنات وتخصيص الذاكرة الظاهرية منفصلة في Vulkan. أيضًا ، يتطلب إرسال الأوامر إلى Vulkan استخدام كائنات متزامنة. في الوقت الحالي ، تم دفع التصحيحات مع التغييرات الضرورية إلى المشرفين على نظام Linux kernel DRM الفرعي (Direct Rendering Manager) ومن المفترض أن يتم تضمينها في 6.6 kernel.

حول برنامج تشغيل NVK ، يذكر أن هذا ، مكتوب من الصفر منذ ذلك الحين كان الغرض من ذلك هو أن المطورين أثناء إنشاء وحدة التحكم استخدم ملفات الرأس الرسمية ووحدات النواة المفتوحة التي نشرتها NVIDIA. في رمز NVK ، تم استخدام المكونات الأساسية لبرنامج تشغيل Nouveau OpenGL في بعض الأماكن ، ولكن نظرًا للاختلافات في أسماء ملفات رأس NVIDIA والأسماء ذات الهندسة العكسية في Nouveau ، فإن الاستعارة المباشرة للرمز أمر صعب وفي معظم الأحيان كان علي أن إعادة التفكير في الكثير من الأشياء وتنفيذها من الصفر.

يدعم برنامج التشغيل حاليًا وحدات معالجة الرسومات (GPU) المستندة إلى Turing (RTX 20XX و GTX 16XX) والبنى الدقيقة الأحدث (البطاقات التي تم إصدارها منذ سبتمبر 2018). في المستقبل ، يخططون لإضافة دعم لعائلة Kepler من وحدات معالجة الرسومات (GeForce 600 و 700).

في المستقبل ، من المخطط رفع أداء وحدة التحكم إلى المستوى المناسب وتنفيذ الدعم لـ Vulkan 1.3 API. على المدى الطويل ، من المتوقع أن يصل برنامج تشغيل NVK لبطاقات رسومات NVIDIA إلى مستوى مماثل من الجودة والوظائف مثل برنامج تشغيل RADV لبطاقات رسومات AMD.

نحن نفكر أيضًا في استخدام مشروع Zink لتنفيذ برنامج تشغيل OpenGL كامل لبطاقات فيديو NVIDIA التي تعمل من خلال ترجمة مكالمات Vulkan API.

أخيرًا إذا كنت كذلك مهتم بمعرفة المزيد عنها، يمكنك التحقق من التفاصيل في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.