ZLUDA برنامه های CUDA را در پلتفرم ROCm فعال می کند، بدون نیاز به تغییر کد
پروژه ZLUDA با پشتیبانی AMD اکنون می تواند کدهای نوشته شده در NVIDIA CUDA را فعال کند تا به صورت بومی روی سخت افزار AMD اجرا شود.
گزارش شده است که AMD پروژه یک توسعه دهنده به نام ZLUDA را در اختیار گرفته است که در ابتدا یک پیاده سازی CUDA برای اجرا از طریق OneAPI اینتل بود. این پروژه که قبلاً متوقف شده است، به برنامه های CUDA اجازه می دهد تا به صورت بومی روی سخت افزار اینتل اجرا شوند. به نظر می رسد، AMD با توسعه دهنده این پروژه تماس گرفته است تا ببیند آیا او علاقه مند است این ابزار را برای اجرا بر روی پردازنده های گرافیکی AMD از طریق پلت فرم HIP/ROCm منتقل کند.
طبق گزارش فورونیکس، این پروژه با تلاشهایی برای فعال کردن برنامههای CUDA برای اجرا بر روی سختافزار AMD بدون نیاز به ترجمه یا تغییر کد، مجدداً شروع شده است. در حالی که هنوز همه برنامه ها به صورت بومی اجرا نمی شوند (مانند NVIDIA Optix)، اما توسعه دهندگان اکنون می توانند باینری ها را بدون تغییر در پردازنده های گرافیکی Radeon اجرا کنند. تنها لازمه شامل کتابخانه ZLUDA است که جایگزین CUDA می شود.
این پروژه دوباره زنده شد، اما AMD در واقع پشتیبانی خود را متوقف کرده بود. اما این به سازنده این فرصت را داد تا کد را به عنوان نرم افزار منبع باز رایگان به اشتراک بگذارد و این چیزی است که اکنون در جریان است. فورونیکس این کتابخانه را آزمایش کرده است و آنها تأیید میکنند که نرمافزار مجهز به CUDA به طور یکپارچه بر روی ROCm بدون هیچ گونه تغییر لازم اجرا میشود.
معنای اصلی این امر این است که توسعه دهندگان اکنون به پشتیبانی CUDA برای نرم افزارهایی که به طور خاص برای سخت افزار AMD بهینه نشده اند دسترسی دارند. امکان استفاده از CUDA به عنوان یک API رندر برای Blender 4.0 یا V-Ray وجود دارد. برای Blender، که رندر محاسباتی Radeon HIP خود را نیز در دسترس دارد، این بدان معناست که پردازندههای گرافیکی Radeon میتوانند در کتابخانه ZLUDA سریعتر از HIP اجرا شوند.
کتابخانه ZLUDA اکنون منبع باز است و در حال حاضر نتایج عالی ارائه می دهد. در حالی که ممکن است کتابخانه هنوز از همه برنامه ها پشتیبانی نکند، اکنون پروژه می تواند با پشتیبانی سایر توسعه دهندگان ادامه یابد. مشخص نیست که چرا AMD تصمیم گرفته است که پروژه ZLUDA را برای دو سال تامین مالی کند و سپس پشتیبانی را کنار بگذارد، اما همانطور که توسط فورونیکس اشاره شد، نرمافزار بسیار کمتری نسبت به 2 سال پیش از HIP پشتیبانی میکرد.
گفته می شود که Andrzej Janik، توسعه دهنده مجرد این پروژه، به کار خود ادامه خواهد داد. یکی از ایدههایی که ارزش بررسی دارد، فعال کردن NVIDIA DLSS از طریق ZLUDA در پردازندههای گرافیکی Radeon است. صفحه رسمی این پروژه قبلاً به روز شده است تا پروژه ZLUDA را منعکس کند که اکنون بر روی پردازنده های گرافیکی AMD تمرکز دارد. توسعهدهنده همچنین نتایج بنچمارک داخلی را در مقایسه با اجرای OpenCL به اشتراک میگذارد:
منبع: فورونیکس، ZLUDA