cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

zoomzoom
Adept I

"No Source Available" when trying to debug OpenCL kernel with CodeXL

I am trying to debug an OpenCL kernel using CodeXL from within Visual Studio 2012. I set a breakpoint at clEnqueueNDRangeKernel and hit F11. The result is a new tab being opened which is labeled "No Source Available". It also says: The current thread is not currently running code or the call stack could not be obtained".

However in CodeXL Properties window I can see information about the kernel I'm trying to debug: Kernel Function Name, # of Arguments, Arguments Information.

Debugging the application from CodeXL, (no Visual Studio), shows a similar problem. In the CodeXL Explorer window, I can see all the kernels listed under OpenCL Programs, OpenCL Program 1, but trying to get into the kernel does not work. If I double click on the kernel name, a new window gets opened labeled "CL Context 1 Kernel 4 -....", but it is empty, no code.

How can I make it work?

Is there an CodeXL log file that I could check to see why it can't open and display the kernel code?

Where does CodeXL look for the OpenCL code?

I have also tried CodeXL from within Visual Studio with the Matrix Multiplication sample from AMD APP SDK and I could step in inside the kernel.

Here are a few details about the project:

- Visual Studio solution with several projects

- The main project statically links with a lib file generated by another project inside the solution. This second project is the one containing the OpenCL code

- There is one single OpenCL source file

- The OpenCL source file is not included in the project; I have tried adding it, but nothing changed

- The OpenCL program is created with clCreateProgramWithSource

- clBuildProgram is called with the options string being empty, ""

Version information:

- CodeXL version 1.5.6571.0

- AMD APP SDK 2.9-1

- AMD FirePro W5100

- Driver Date 5/20/2014

- Driver Version 13.352.1009.0

Thanks.

0 Likes
2 Replies
salgrana
Staff

Hi,

Thanks for the question.

There is a log for CodeXL, but in this case, I don't think that it will contain relevant information.

CodeXL gets the OpenCL code from the arguments for clCreateProgramWithSource called in run-time.

Did you debug your application and made sure that the arguments are valid?

Can you send a copy of your OpenCL code to gputools.support@amd.com so that we test it here?

Thanks,

Sigal

0 Likes

Hi,

Regarding the arguments, yes they are valid. clSetKernelArg returns CL_SUCCESS on each call. Also, no error is reported when calling clEnqueueNDRangeKernel.

Yes, I will get back to you by e-mail with details about the code.

Thank you.

0 Likes