PanCSF ، برنامج تشغيل Linux جديد لوحدات معالجة الرسومات في مالي من Collabora

بانCSF

PanCSF: برنامج تشغيل DRM جديد لوحدات معالجة الرسومات القائمة على Mali CSF

قبل بضعة أيام قدم Collabora الإطلاق مراقب إدارة الحقوق الرقمية PanCSF (Direct Rendering Manager) ، والذي يعمل على مستوى Linux kernel.

المتحكم تم تصميم PanCSF DRM للاستخدام مع Mali GPU (G710 +) من الجيل العاشر ، والذي يستخدم تقنية CSF (Command Stream Frontend) ، والتي تجلب بعض وظائف السائق إلى جانب البرنامج الثابت لتقليل الحمل على وحدة المعالجة المركزية ، ويقدم نموذجًا جديدًا لتنظيم العمل على وحدة معالجة الرسومات.

كما سيكون القدر ، تم الكشف عن برنامج تشغيل DRM جديد لوحدات معالجة الرسومات المالية الحديثة في مالي في وقت سابق من هذا الشهر. يعد هذا غريبًا بعض الشيء في عالم النظام الفرعي DRM ، حيث يتم عادةً إضافة دعم الأجهزة الجديدة إلى برامج تشغيل GPU التي تدعم الأجيال القديمة من الأجهزة.

حول برنامج تشغيل PanCSF DRM

في البداية ، حاول تنفيذ الدعم لوحدات معالجة الرسومات (GPU) القائمة على CSF في برنامج تشغيل Panfrost ، لكن المطورين توصلوا إلى استنتاج مفاده أن هذا سيؤدي إلى تعقيد كبير لبرنامج التشغيل الحالي وسيكون من الأفضل لـ CSF إنشاء محرك جديد تم إنشاؤه باستخدام بنية مختلفة.

تم اقتراح برنامج تشغيل PanCSF الجديد للاختبار تنفذ واجهة مستخدم جديدة تمامًا ، منطق جدولة عمل جديد ومنطق تحكم MMU / GPU-VA جديد. يتم استخدام كود Panfrost الحالي كأساس لبرنامج التشغيل الجديد.

وهو أنه في الجيل الجديد من GPU Mali ، تم استبدال برنامج جدولة مدير الوظائف بواجهة CSF (Command Stream Frontend) ، والذي يستخدم نموذجًا قائمًا على تدفق الأوامر مع جدولة قائمة انتظار تدفق الأوامر على جانب البرنامج الثابت بدلاً من نموذج قائم على تدفق العمل.

لن نقدم وصفًا تفصيليًا لكيفية عمل CSF ، ولكن من الجدير بالذكر أن واجهة CSF بها مجموعة تعليمات مخصصة ومجموعة من السجلات لتمرير البيانات أو الحفاظ على الحالة الداخلية. هناك تعليمات لإرسال المهام (وظائف الحساب والفسيفساء والمهام المقطوعة) وغيرها للقيام بأشياء تافهة ، مثل ذاكرة القراءة / الكتابة ، وانتظر حتى تكتمل المهمة ، وانتظر الأسوار ، والقفز / الفرع ...

يذكر أن لتنظيم عمل المبرمج ، تم دمج متحكم Cortex-M7 منفصلة على GPU ويتم توفير وحدة تنفيذ أوامر خاصة لتنفيذ تعليمات CSF. تتطلب هذه الميزات تنظيمًا مختلفًا تمامًا لنقل العمل إلى وحدة معالجة الرسومات من مساحة المستخدم.

المتحكم يستعير PanCSF قوالب تهيئة وحدة التحكم النموذجية ، إدارة التردد وإدارة الطاقة ، والتي من المحتمل أن تتغير مع نقل بعض ميزات إدارة الطاقة في وحدات معالجة الرسومات الجديدة في مالي إلى البرامج الثابتة.

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

تجدر الإشارة إلى أنه بالنسبة لأولئك الذين ليسوا على دراية بواجهات برمجة تطبيقات الرسومات ، يجدر بنا أن نتذكر أن Vulkan يحاول إعادة التحكم إلى المستخدم من خلال جعل الكثير من إدارة خط أنابيب الرسومات صريحًا ، بينما حاول OpenGL إخفاء الأشياء. أسهل.

أخيرًا ، ذكر ذلك مطوري المستقبل لاحظ أن طلب التعليقات هذا ، على الرغم من أنه يعمل جزئيًا على الأقل (تم اختباره حتى الآن فقط على عبء عمل GLES2 الأساسي) ، إلا أنه بعيد عن الاستعداد وذكر ذلك هناك أمور تحتاج إلى معالجة: مثل محاولة استخدام drm_sched بدلاً من تنفيذ برنامج جدولة قائم على المشاركة الزمنية ، مع وجود آلية مناسبة لإخلاء كائن المخزن المؤقت للتعامل برشاقة مع المواقف التي يكون فيها النظام تحت ضغط الذاكرة.

بالإضافة إلى ذلك ، يذكر أن دعم إدارة الطاقة غير موجود حاليًا ، مقياس تردد الجهاز وربما ميزات أخرى مفيدة مثل عدادات الأداء ، ولكن يجب أن تكون سهلة التنفيذ نسبيًا مقارنة بمنطق البرمجة وإدارة الذاكرة.

أخيرا وليس آخرا، من المتوقع أن يتم إصدار التغييرات قريبًا لاستخدام برنامج التشغيل الجديد في الجدول.

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


اترك تعليقك

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

*

*

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