إصدار PoCL 1.3، وهو تطبيق مستقل لمعيار OpenCL

يتوفر إصدار لمشروع PoCL 1.3 (لغة الحوسبة المحمولة OpenCL)، والذي يعمل على تطوير تطبيق معيار OpenCL المستقل عن الشركات المصنعة لمسرعات الرسومات ويسمح باستخدام واجهات خلفية مختلفة لتنفيذ نواة OpenCL على أنواع مختلفة من الرسومات والمعالجات المركزية . يتم توزيع رمز المشروع بموجب ترخيص MIT. يدعم التشغيل على منصات X86_64، وMIPS32، وARM v7، وAMD HSA APU والعديد من معالجات TTA (هندسة النقل المشغلة) المتخصصة مع بنية VLIW.

يعتمد تنفيذ مترجم kernel OpenCL على LLVM، ويتم استخدام Clang كواجهة أمامية لـ OpenCL C. لضمان قابلية النقل والأداء المناسبين، يمكن لمترجم OpenCL kernel إنشاء وظائف مجمعة يمكنها استخدام موارد الأجهزة المختلفة لموازاة تنفيذ التعليمات البرمجية، مثل VLIW، وsuperscalar، وSIMD، وSIMT، ومتعدد النواة ومتعدد الخيوط. يتوفر دعم برنامج تشغيل ICD
(برنامج تشغيل العميل القابل للتثبيت). توجد واجهات خلفية لدعم التشغيل عبر وحدة المعالجة المركزية (CPU)، وASIP (TCE/TTA)، ووحدة معالجة الرسومات (GPU) استنادًا إلى بنية HSA ووحدة معالجة الرسومات NVIDIA (CUDA).

يضيف الإصدار الجديد دعمًا لـ LLVM/Clang 8.0. يوفر الدعم لـ ICD (برنامج تشغيل العميل القابل للتثبيت) على نظام التشغيل macOS. تم تنفيذ القدرة على إنشاء pocl بدون برامج تشغيل خلفية لوحدة المعالجة المركزية. بالنسبة لـ HSA (هندسة النظام غير المتجانسة)، يتم توفير الدعم الأولي لتجميع ISAs أعلى وقت تشغيل HSA. تم تنظيف قاعدة التعليمات البرمجية، بما في ذلك إزالة مكتبة Vecmathlib وإيقاف دعم الإصدارات الأقدم من LLVM (أقل من 6.0).

المصدر: opennet.ru

إضافة تعليق