Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

Journeyman III

Questions about profiling OpenCL kernel on CPU

Hey guys,

I tried time-based sampling a program that runs an OpenCL kernel on the CPU, hoping to get in the call graph granular info about were my hotspots may be in the kernel.

I'm not able to locate any part of my kernel in the call graph though.

Most samples are taken in modules:, and I suspect that my kernel is being compiled into this latter module because of its name, that it's located under /tmp and its timer value. However, the symbols for these modules are marked as not loaded, and the resulting profiling data is of little use.

I tried disabling optimizations and enabling debugging information like this when building my program:

clBuildProgram(*program, 0, NULL, "-g -cl-opt-disable", NULL, NULL)

I found the reference to the -g option in a possibly outdated AMD document:  "Introduction to OpenCL Programming - Training Guide" published in 2010.

In short:

Is it possible to load the missing debugging symbols into CodeXL? How?

Can I get descriptive information in the call graph about where the kernel hotspots are when running it on the CPU?

I'm running CodeXL 1.8 on Ubuntu 14.04.

Thank you,


0 Replies