Pergunta
Estou trabalhando no OpenCL.Alguém conhece um bom depurador para OpenCL para que eu possa entrar no código OpenCL e rastrear?
Solução
Talvez o depurador da OpenCL de Gremedy seja útil?http://www.gremedy.com/gdebuggercl.php
Outras dicas
Você também pode querer procurar no Codexl:
https://gpuopen.com/compute-product/codexl/
O Codexl foi originalmente desenvolvido pela AMD, mas depois foi lançado como um projeto de código aberto.
Sua melhor aposta é a Intel Debugger para CPU, anunciada na Intel OpenCL SDK 1.5:
Intel OpenCl SdkVocê pode depurar passo a passo no Visual Studio.
Talvez você possa tentar usar o GDB no X86 CPU no Linux OS, consulte o tutorial da AMD:http://developer.amd.com/gpu/atistreamsdk/assets/debugging_opencl_with_gdb_on_x86_cpus.pdf
Somente AMD gDEBugger suporta execução passo a passo de OpenCL e outros recursos interessanteshttp://developer.amd.com/tools/gDEBugger/Pages/default.aspx
NVidia Parallel NSight e outros produtos NVidia não suportarão depuração OpenCL devido a decisões de marketing.
Eu não usei, mas CLBuilder parece promissor
Características gerais do CLBuilder
- Escreva kernels OpenCL com sintaxe de cores
- Compile o kernel para verificar erros sem a necessidade de iniciar e depurar seu próprio aplicativo.
- Crie e selecione facilmente configurações de compilação.
- Defina os valores de entrada do kernel e verifique os resultados.
- Crie um perfil do tempo de execução do kernel para melhorar o desempenho.
- Crie diferentes tamanhos de itens de trabalho definido (global e local) para verificar o desempenho.
- Execute o kernel com printf na CPU e depure facilmente o código.
- Exibir valores de entrada e saída em um gráfico.
- Consulte o log de execução para ver o que o Clbuilder está fazendo (registre cada função OpenCl C).
- Verifique argumentos e recursos locais e constantes usados pelo kernel.
- Gere código C Para executar o kernel, o CLBuilder também compilará esse código -fonte gerado e o executará.
- Verifique facilmente todas as propriedades do OpenCL, incluindo informações da plataforma.
Nvidia's Sight paralelo O depurador (anteriormente conhecido como Nexus) suporta OpenCL (GPU).
A partir do site:
O NSight paralelo suporta CUDA C, OpenCL, DirectCompute, Direct3D e OpenGL.