AMD CodeXL: OpenGL and OpenCL Debugger and Profiler


AMD CodeXL is a new tool for OpenGL and OpenCL developers. CodeXL includes a GPU debugger, a
profiler for both GPU and CPU and offers OpenCL kernels analysis capabilities. CodeXL is available as a standalone application for Linux (64-bit) and Windows (32 and 64-bit). An extension for Visual Studio is also available.

The CPU profiling of an OpenGL/OpenCL application (for example the functions calls) can be done on a Radeon or GeForce GPU. I tested the Windows 64-bit version with my GeForce GTX 680:

AMD CodeXL with a NVIDIA GTX 680
CodeXL Windows 7 64-bit – GTX 680

AMD CodeXL with a NVIDIA GTX 680

For a detailled GPU profiling and debugging, CodeXL requires an AMD APU / GPU to access and visualize, for example, GPU counter data.

I also quickly tested the Linux version of CodeXL under Mint 13 with a Radeon HD 5850 and FGLRX driver (Catalyst 12.8 / v8.982). Works fine:

AMD CodeXL with an AMD HD 5850
CodeXL Linux Mint 13 64-bit – HD 5850

Under Linux, I had to install libgtkglext1 to run the teapot demo:

$ ./AMDTTeaPot-bin
./AMDTTeaPot-bin: error while loading shared libraries: <br/>cannot open shared object file: No such file or directory

On Ubuntu based distribs, just use the following command to install libgtkglext1:

$ sudo apt-get install libgtkglext1

More information about CodeXL as well as Windows/Linux downloads can be found HERE.

Source: Geeks3D forum


  • Looks like that’s the result of AMD’s acquisition of gDEBugger. The Windows version looks almost identical.

    That’s actually a very good thing IMHO, because it’s a very useful tool that we needed to keep an old version of, because the newer versions (after the AMD acquisition) were usable only as VS 2010 plugins and only on AMD cards…

    Now it’s a standalone Windows/Linux app again, and it lets you inspect apps on nVidia and AMD cards. Very good news! Kudos AMD!

  • Justin

    How do you get around it looking for in /usr/lib rather than /usr/lib64 on Ubuntu? Just symlink it?

  • nou


  • me

    exporting LD_LIBRARY_PATH did not help.
    I still get the same error.