运行时OpenCL内核代码中的错误

时间:2017-06-04 14:06:58

标签: windows visual-studio compiler-errors runtime-error opencl

我是Visual Studio的新手,我正在用它来编写一个使用OpenCL的简单并行排序程序。 当我运行它时,我在输出之前得到一行(即从我收到并打印结果缓冲区之前)说" 5生成的错误。"。 我假设这告诉我,我的内核文件中有错误,如果我故意在我的内核文件中写入错误,那么数字就会增加。

我真的很想知道这些错误是什么,所以我可以纠正我的程序。由于不熟悉VS,我无法在任何地方找到它们。 有谁知道我在哪里可以找到正在生成的错误。 感谢

1 个答案:

答案 0 :(得分:2)

您需要调用clGetProgramBuidlInfo请求CL_PROGRAM_BUILD_LOG以获取编译器的运行时错误。

char result[4096];
size_t size;
clGetProgramBuildInfo( program, device, CL_PROGRAM_BUILD_LOG, sizeof(result), result, &size);
printf("%s\n", result);