"AMD CodeXL also provides a GPU profiler that collects and visualizes GPU counter data, application trace, kernel occupancy and hotspots analysis for AMD APU and GPUs. The profiler gathers data from the OpenCL™ run-time and AMD Radeon™ GPUs during the execution of an OpenCL™ application."
What profiling types are used in particular?
Event-based profiling with the help of something like clGetEventProfilingInfo ?
Does CodeXL also instrument the program?
If yes, how? Thorugh runtime instrumentation or runtime injection, ...?