我想通过英特尔SDK和Visual Studio 2013调试OpenCL代码,但调试器不会在断点处停止。我启用了OpenCL内核调试,并将buildoption设置为-g -s,并在opencl代码中添加了一个断点(我也不使用任何偏移量)。
我也尝试过其他地方提到的所有伏都教徒。
但没有任何效果。有什么建议?
*这导致以下结果:在到达断点之前,OCL中断点被标记为不可访问,然后在文件和代码行中显示为可访问。
您使用哪个设备进行调试?使用Intel SDK只能调试Intel CPU。英特尔图形将无法正常工作。
检查以下各项:是否使用intel编译器而不是MSVC编译器?右键单击项目->转换为opencl项目/使用intel c ++编译器
编译器设置:Code_builder菜单-> opencl调试器->选项
选中“启用opencl内核调试”,指定要调试的工作项(如果仅使用全局workgrp大小而不使用本地,则0,0,0很好,第一个线程)
标签api调试器:选中启用opencl api调试器
在-g -s之后,您必须将路径添加到内核,例如:
options = " -g -s E:\\prog\\clproj\\Clproj\\kernel.cl";
您是否将选项char *像这样移交给了clBuildProgram?
clBuildProgram(program, 0, NULL, options, NULL, NULL);
确保使用intel opencl库,而不使用其他任何opencl库。
要使用Vstudio进行正确的设置,请点击此处:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句