Pregunta
Estoy trabajando en OpenCl. ¿Alguien sabe de un buen depurador para OpenCl para que pueda entrar en el código OpenCL y rastrear?
Solución
¿Quizás el depurador OpenCl de Gremedy sería útil?http://www.gremedy.com/gdebuggercl.php
Otros consejos
También es posible que desee investigar CODEXL:
https://gpuopen.com/compute-product/codexl/
CodExl fue desarrollado originalmente por AMD, pero luego fue lanzado como un proyecto de código abierto.
Su mejor apuesta es Intel Debugger para CPU, anunciada en Intel OpenCl SDK 1.5:
Intel OpenCl SDKPuedes depurar paso a paso en Visual Studio.
Tal vez pueda intentar usar GDB en la CPU x86 en Linux OS, consulte el tutorial de AMD:http://developer.amd.com/gpu/atistreamsdk/assets/debugging_opencl_with_gdb_on_x86_cpus.pdf
Puede usarla getattr
para obtener un miembro de un objeto con el miembroNombre como una cadena.
getattr(self, 'handle_' + instruction)(data)
No lo he usado, pero Clbuilder parece prometedor
Características principales de ClBuilder
- Escribir núcleos OpenCl con sintaxis de color
- Compile el núcleo para verificar los errores sin la necesidad de iniciar y depurar su propia aplicación.
- Crear y seleccionar fácilmente la configuración de compilación.
- Defina los valores de entrada del núcleo y verifique los resultados.
- Perfente el tiempo de ejecución del núcleo para mejorar el rendimiento.
- Cree diferentes tamaños de elementos de trabajo (globales y locales) para verificar las actuaciones.
- Ejecute el núcleo con printf en la CPU y depire fácilmente del código.
- Mostrar valores de entrada y salida en un gráfico.
- Consulte el registro de ejecución para ver qué está haciendo ClBuilder (registre cada función de OpenCl C).
- Verifique los argumentos y recursos locales y constantes utilizados por el núcleo.
- Genere el código C para ejecutar el kernel, ClBuilder también compilará este código fuente generado y lo ejecutará.
- Verifique fácilmente todas las propiedades de OpenCL, incluida la información de la plataforma.
Nvidia Visión paralela El depurador (anteriormente conocido como Nexus) admite OpenCL (GPU).
Del sitio web:
Paralelo NSIGHT admite Cuda C, OpenCl, DirectCompute, Direct3D y OpenGL.