درایور منبع باز Rusticle دارای گواهی سازگاری با OpenCL 3.0 است

توسعه دهندگان پروژه مسا گواهینامه توسط سازمان Khronos را برای درایور rusticl اعلام کردند، که با موفقیت تمام تست های مجموعه CTS (مجموعه تست انطباق Kronos) را گذرانده است و کاملاً با مشخصات OpenCL 3.0 سازگار است که API ها و API ها را تعریف می کند. پسوندهای زبان C برای سازماندهی محاسبات موازی بین پلتفرمی. دریافت گواهی به شما این امکان را می دهد که به طور رسمی مطابقت با استانداردها را اعلام کرده و از علائم تجاری Khronos مرتبط استفاده کنید. این آزمایش بر روی سیستمی با پردازنده‌های گرافیکی یکپارچه اینتل با استفاده از درایور Gallium12D Iris انجام شد.

درایور به زبان Rust نوشته شده است و توسط Karol Herbst از Red Hat که در توسعه Mesa، درایور Nouveau و پشته باز OpenCL نقش دارد، توسعه داده شده است. Rusticle به عنوان آنالوگ از OpenCL Clover جلویی Mesa عمل می کند و همچنین با استفاده از رابط Gallium ارائه شده در Mesa توسعه یافته است. شبدر برای مدت طولانی رها شده است و روستایی به عنوان جایگزین آینده آن قرار گرفته است. علاوه بر دستیابی به سازگاری با OpenCL 3.0، پروژه Rusticle در پشتیبانی از برنامه های افزودنی OpenCL برای پردازش تصویر با Clover متفاوت است، اما هنوز از فرمت FP16 پشتیبانی نمی کند. برای تولید اتصالات برای Mesa و OpenCL، که به شما امکان می دهد توابع Rust را از کد C فراخوانی کنید و بالعکس، rust-bindgen در Rusticle استفاده می شود.

کد پشتیبانی از زبان Rust و درایور rusticl در جریان اصلی Mesa پذیرفته شده‌اند و در نسخه Mesa 22.3 که در اواخر نوامبر انتظار می‌رود ارائه می‌شوند. پشتیبانی Rust و Rusticl به طور پیش‌فرض غیرفعال می‌شود و به ساختی نیاز دارد که گزینه‌های "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021" به صراحت مشخص شده باشد. هنگام ساخت، به کامپایلر rustc، bindgen binding generator، LLVM، SPIRV-Tools و SPIRV-LLVM-Translator به عنوان وابستگی های اضافی نیاز دارید.

امکان استفاده از زبان Rust در پروژه مسا از سال 2020 مورد بحث قرار گرفته است. از مزایای پشتیبانی Rust، افزایش امنیت و کیفیت درایورها به دلیل خلاص شدن از مشکلات معمول در هنگام کار با حافظه و همچنین امکان گنجاندن پیشرفت های شخص ثالث در Mesa مانند Kazan (پیاده سازی Vulkan) ذکر شده است. در رست). معایب عبارتند از افزایش پیچیدگی سیستم ساخت، عدم تمایل به گره خوردن به سیستم بسته محموله، نیازهای گسترده برای محیط ساخت و نیاز به گنجاندن کامپایلر Rust در وابستگی های ساخت مورد نیاز برای ساخت اجزای کلیدی دسکتاپ در لینوکس.

علاوه بر این، می‌توانیم به کار روی توسعه درایور Nouveau که توسط کارول هربست نیز انجام شده است اشاره کنیم. درایور Nouveau پشتیبانی اولیه OpenGL را برای GNU NVIDIA GeForce RTX 30xx بر اساس ریزمعماری Ampere اضافه کرده است که از می 2020 منتشر شده است. تغییرات مربوط به پشتیبانی از تراشه های جدید در هسته Linux 6.2 و Mesa 22.3 گنجانده خواهد شد.

منبع: opennet.ru

اضافه کردن نظر