انتشار PoCL 1.4، یک پیاده سازی مستقل از استاندارد OpenCL

در دسترس انتشار پروژه PoCL 1.4 (Portable Computing Language OpenCL)، که پیاده‌سازی استاندارد OpenCL را توسعه می‌دهد که مستقل از تولیدکنندگان شتاب‌دهنده‌های گرافیکی است و امکان استفاده از پشتیبان‌های مختلف برای اجرای هسته‌های OpenCL بر روی انواع مختلف گرافیک و پردازنده‌های مرکزی را فراهم می‌کند. کد پروژه توزیع شده توسط تحت مجوز MIT پشتیبانی از کار بر روی پلتفرم های X86_64، MIPS32، ARM v7، AMD HSA APU و پردازنده های تخصصی مختلف TTA (معماری محرک حمل و نقل) با معماری VLIW.

پیاده سازی کامپایلر هسته OpenCL بر اساس LLVM ساخته شده است و Clang به عنوان قسمت جلویی برای OpenCL C استفاده می شود. برای اطمینان از قابلیت حمل و عملکرد مناسب، کامپایلر هسته OpenCL می تواند توابع ترکیبی ایجاد کند که می تواند از منابع سخت افزاری مختلف برای موازی سازی اجرای کد استفاده کند، مانند VLIW، superscalar، SIMD، SIMT، چند هسته ای و چند رشته ای. پشتیبانی از درایور ICD در دسترس است
(درایور کلاینت قابل نصب). پشتیبان هایی برای اطمینان از عملکرد از طریق CPU، ASIP (TCE/TTA)، معماری مبتنی بر GPU وجود دارد HSA و NVIDIA GPU (CUDA).

В نسخه جدید:

  • پشتیبانی اضافه شد LLVM/Clang 9.0. پشتیبانی از نسخه های LLVM قدیمی تر از 6.0 متوقف شده است.
  • اجرای بهتر نمایش کدهای میانی مبتنی بر CPU روح и SPIR-V (مورد استفاده در Vulkan API)، که می تواند هم برای نمایش سایه بان ها برای گرافیک و هم برای محاسبات موازی استفاده شود.
  • درایور pocl-accel با زیرساخت مثال برای پشتیبانی از شتاب‌دهنده‌های سخت‌افزاری OpenCL 1.2 که رابط کنترلی با نقشه حافظه (mmap) را پیاده‌سازی می‌کنند، اضافه شد.
  • قابلیت ساخت نصب‌های pocl که به دایرکتوری‌ها متصل نیستند (قابل تغییر مکان) اضافه شده است.

منبع: opennet.ru

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