سؤال
أنا أعمل على OpenCL.هل يعرف أحد مصحح أخطاء جيد لـ OpenCL حتى أتمكن من الدخول إلى كود OpenCL والتتبع؟
المحلول
ربما سيكون مصحح الأخطاء Opencl من Gremedy مفيدًا؟http://www.gremedy.com/gdebuggercl.php
نصائح أخرى
قد ترغب أيضًا في البحث في Codexl:
https://gpuopen.com/compute-product/codexl/
تم تطوير CODEXL في الأصل بواسطة AMD ، ولكن تم إصداره لاحقًا كمشروع مفتوح المصدر.
أفضل رهان لك هو Intel Debugger لمهاجم CPU ، الذي تم الإعلان عنه في Intel Opencl SDK 1.5:
Intel Opencl SDKيمكنك تصحيح أخطاء خطوة بخطوة في Visual Studio.
ربما يمكنك محاولة استخدام GDB على وحدة المعالجة المركزية X86 ضمن نظام التشغيل Linux ، راجع برنامج AMD البرنامج التعليمي:http://developer.amd.com/gpu/atistreamsdk/assets/debugging_opencl_with_gdb_on_x86_cpus.pdf
تدعم AMD gDEBugger فقط تشغيل OpenCL خطوة بخطوة والميزات اللذيذة الأخرىhttp://developer.amd.com/tools/gDEBugger/Pages/default.aspx
لن تدعم NVidia Parallel NSight ومنتجات NVidia الأخرى تصحيح أخطاء OpenCL بسبب قرارات التسويق.
لم أستخدمها ، لكن clbuilder تبدو واعدة
الميزات الرئيسية لـ Clbuilder
- اكتب حبات opencl مع بناء جملة اللون
- قم بتجميع kernel للتحقق من الأخطاء دون الحاجة إلى تشغيل التطبيق الخاص بك وتصحيحه.
- قم بإنشاء إعدادات الإنشاء بسهولة وحددها.
- تحديد قيم إدخال kernel وتحقق من النتائج.
- الملف الشخصي وقت تنفيذ kernel من أجل تحسين الأداء.
- قم بإنشاء مجموعة مختلفة من أحجام عناصر العمل (العالمية والمحلية) للتحقق من العروض.
- قم بتنفيذ kernel مع printf على وحدة المعالجة المركزية وتصحيح الرمز بسهولة.
- عرض قيم الإدخال والإخراج على الرسم البياني.
- راجع سجل التنفيذ من أجل معرفة ما يفعله Clbuilder (قم بتسجيل كل وظيفة OpenCl C).
- تحقق من الحجج والموارد المحلية والمستمرة التي تستخدمها النواة.
- إنشاء رمز C لتنفيذ kernel ، سيقوم Clbuilder أيضًا بتجميع رمز المصدر الذي تم إنشاؤه وتنفيذه.
- تحقق بسهولة من جميع خصائص OpenCL بما في ذلك معلومات النظام الأساسي.
نفيديا موازية nsight Debugger (المعروف سابقًا باسم Nexus) يدعم OpenCl (GPU).
من الموقع:
يدعم NSIGHT الموازية CUDA C و OPENCL و DIRECTCOMPUTE و DIRECT3D و OPERGL.