我正在尝试调试我的OpenCL内核。我认为,错误在于错误的内存分配。所以,我正在寻找一种方法来检测它。
长话短说,我是否可以在POCL平台上运行OpenCL内核,并使用知名的仪器进行检查?
发布于 2019-03-13 23:50:43
是的,Oclgrind应该会给出更多有用的错误消息,但pocl的调试符号支持应该再次在master中工作。因此,valgrind和gdb现在应该能够更好地识别OpenCL C行号。
在pocl master中还有一个新的环境POCL_EXTRA_BUILD_FLAGS:
“将环境变量的内容添加到所有clBuildProgram()调用中。例如,POCL_EXTRA_BUILD_FLAGS="-g -cl-opt-disable”可用于强制添加调试数据所有已构建的内核,以帮助调试使用gdb或valgrind等工具的内核问题。“
发布于 2019-03-13 21:07:28
你可以做到的。但是,也有专门为此而设计Oclgrind的工具:https://github.com/jrprice/Oclgrind
https://stackoverflow.com/questions/55131306
复制相似问题