I'm a novice for OpenCL and I'm ramping up Intel SDK for OpenCL following the Intel SDK for OpenCL 2013 Application 2013 User's Guide for Windows OS. I met an problem about OpenCL debug the breakpoint in OpenCL file does not work in Visual Studio 2010
Here is some of the environment information:
OS: Windows 7 Enterprise.
Processor: Intel(R) Core(TM) i7-3770T CPU @ 2.50GHz
Intel SDK for OpenCL Application Kernel Builder version: 184.108.40.206
I followed the steps in the guide document. Enabled opencl kernel debugging and set work items properlly before debugging, added "-g -s" in build parameters and set the breakpoints properlly, then press "F5' to run debug, but the app cannot break at the openCL breakpoints. I tried to use other port in the "Advanced Setting" but it still does not work.
Anyone could help?
The problem is solved. The root cause is that I'm passing a relative path but not a full path of the OpenCL file name in clBuildProgram function like below.
clBuildProgram(g_program, 0, NULL, "-g -s c:\\work\\ToneMapping\\ToneMapping.cl", NULL, NULL);
Is this an existing issue or expected behavior do you think?
Its not working for me. I have followed the steps that you have mentioned, and I can even see the breakpoint becoming active and saying "At myKernel.cl, line 222 in process 'icldbgsrv.exe'", but still the breakpoint does not get hit. I am using Intel OpenCL 2.0 platform, and the device is CPU, Core i5-3317U @ 1.7 GHz.
I tried putting a breakpoint in the ToneMapping Intel sample, and it is working pretty well. I tried the sample with both OpenCL 1.2 and 2.0 and the breakpoint gets hit successfully. I have done the same steps to set the breakpoint in my own project but the breakpoint does not get hit. I used OpenCL 2.0 for my project, as it gives a build error when I use OpenCL 1.2.
Now I would try to embed my kernel into the framework and project structure used by the Intel Sample and see if the breakpoint gets hit. If it still does not get hit, I would then provide a minimal reproducer for your scrutiny.