codexl_rev_1140x100

AMD CodeXL is a comprehensive tool suite that enables developers to harness the benefits of AMD CPUs, GPUs and APUs. It includes powerful GPU debugging, comprehensive GPU and CPU profiling, and static OpenCL™ kernel analysis capabilities, enhancing accessibility for software developers to enter the era of heterogeneous computing. AMD CodeXL is available both as a Visual Studio® extension and a standalone user interface application for Windows® and Linux®.

AMD CodeXL increases developer productivity by helping them identify programming errors and performance issues in their application quickly and easily. Now developers can debug, profile and analyze their applications with a full system-wide view on AMD APU, GPU and CPUs. Scroll down for more information about system requirements, documentation, benefits, key features, and to download CodeXL.

Click image to watch CodeXL highlights video.

GPU Debugging

AMD CodeXL offers comprehensive GPU debugging with the ability debug OpenCL™ & OpenGL API calls and OpenCL™ kernels. It enables developers to step through the source code to find bugs, optimize performance and reduce memory consumption. The debugger includes real-time OpenCL™ kernel debugging, which allows developers to step into the kernel execution directly from the API calls, debug inside the kernel, view all variable values across different work groups and work items – and all this on a single computer with a single GPU.

AMD CodeXL takes the mystery out of debugging OpenCL™ and OpenGL, allowing developers to peek into compute and graphic memory objects, monitor their contents, and detect memory leaks and code paths that caused it. Users can view and save the API call logs, find the deprecated functions and see the recommended alternative function calls.

CPU Profiling

AMD CodeXL has profiling suite that helps software developers to identify, investigate and improve the performance of applications, drivers and system software on AMD CPUs. It helps find time critical hotspots and diagnose performance issues, precisely with CPU sampling and call-graph profiling features. AMD CodeXL CPU profiling is ready to be used to improve the performance of games and media-oriented applications, transaction processing, and high performance scientific/engineering computation.

GPU Profiling

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. This can be used to discover bottlenecks in an application and find ways to optimize the application’s performance for AMD platforms.

Static Kernel Analysis

AMD CodeXL includes a static analysis component that enables developers to compile, analyze and disassemble their OpenCL™ kernel code, estimate accurate performance of kernels and view disassembly of the generated hardware kernel, all without running the actual application.

CPU Profiling Key Features and Benefits

Diagnose performance issues in hot-spotsDiagnose performance issues using AMD technology. AMD CodeXL uses hardware-level performance counters and instruction-based sampling to provide valuable clues about inefficient program behavior. Use rates and ratios to quickly measure the efficiency of functions, loops and program statements.
Analyze Call Chain relationshipsDiagnose issues from a caller / callee relationship perspective. Quickly determine which call trees are using the most resources (time or events) to isolate potential optimization opportunities.
Supports multi-core Windows and Linux platformsAMD CodeXL supports all of the latest AMD processors on both Windows and Linux platforms.
Extends Microsoft Visual StudioMicrosoft Visual Studio user can analyze their programs without leaving the Visual Studio environment. The AMD CodeXL Visual Studio plug-in provides all of the profiling features supported by the stand-alone AMD CodeXL for Windows GUI-based tool.

GPU Debugging Key Features and Benefits

Real-time OpenCL and OpenGL API-level debuggingAllows locating API function calls and the code paths that led to them
Online OpenCL kernel debuggingWorks with present hardware. Requires no special configuration or changes to the code. Develop and debug on a single computer with just one GPU. Step through the workflow of a single work item or compare values across all work items.
Full integration with Visual StudioNow API-level debugging is performed inside the Visual Studio source editor. If OpenCL kernel source code .cl files are included in the project, they will be identified and used for kernel debugging. In addition, Visual Studio views such as the call stack view and locals view will be filled with kernel debugging information.
API statistics viewGives an overview of OpenCL and OpenGL API usage, and more detailed views, including unrecommended function calls (with alternative suggestions) and deprecated behavior.
Object visualizationView and export OpenCL buffers and Images and OpenGL Textures and buffers as pictures or as spreadsheet data.
OpenCL program and OpenGL shader source exportingFor applications that generate programmable GPU code at runtime, dump the code to a file or save it for later use. Debug through run-time generated OpenCL kernels using these files.
OpenCL and OpenGL support, plus over 160 extensionsSupport includes API functions, enumeration values, data formats, and more.

GPU Profiling Key Features and Benefits

Collect OpenCL™ Application Trace

  • View and debug the input parameters and output results for all OpenCL™ API calls
  • Search the API calls
  • Navigate to the source code that called an OpenCL™ API
  • Specify which OpenCL™ APIs will be traced
Collect GPU Performance Counters of AMD Radeon™ graphics cards

  • Show kernel resource usage
  • Show the number of instructions executed by the GPU
  • Show the GPU utilization
  • Show the GPU memory access characteristics
  • Measure kernel execution time
OpenCL™ Timeline visualization

  • Visualize the application high level structure
  • Visualize kernel execution and data transfer operations
  • Visualize host code execution
OpenCL™ Application Summary pages

  • Find incorrect or inefficient usage of the OpenCL™ API using the OpenCL™ analysis module
  • Find the API hotspots
  • Find the bottlenecks between kernel execution and data transfer operations
  • Find the top 10 data transfer and kernel execution operations
OpenCL™ Kernel Occupancy Viewer

  • Calculates and displays a kernel occupancy number, which estimates the number of in-flight wavefronts on a compute unit as a percentage of the theoretical maximum number of wavefronts that the compute unit can support
  • Find out which kernel resource (GPR usage, LDS size, or Work-group size) is currently limiting the number of in-flight wavefronts
  • Displays graphs showing how kernel occupancy would be affected by changes in each kernel resource
IL and ISA Display

  • Display the AMD IL and ISA (hardware disassembly) code of the kernel for OpenCL™ kernels and DXASM code for DirectCompute kernels.

 

Static Kernel Analysis Key Features and Benefits

  • Compile, analyze and disassemble the OpenCL kernel and supports multiple GPU device targets.
  • View any kernel compilation errors and warnings generated by the OpenCL runtime.
  • View the AMD Intermediate Language (IL) code generated by the OpenCL run-time.
  • View the ISA code generated by the AMD Shader Compiler.
  • View various statistics generated by analyzing the ISA code.
  • View General Purpose Registers and spill registers allocated for the kernel.

System Requirements

  • Microsoft® Windows 7® (32 or 64-bit), Microsoft® Windows 8® (32 or 64-bit) or Microsoft® Windows 8.1® (32 or 64-bit)
  • Linux®:
    • Red Hat® Enterprise Linux® 64-bit 6.*
    • Ubuntu® 64-bit 12.04 or later
  • Microsoft® Visual Studio® 2010 or 2012 (applies to Microsoft® Visual Studio® Plugin Only)
  • The latest AMD Catalyst driver

Documentation

Support

Please visit the CodeXL forum. The forum allows users to interact with the CodeXL team, provide feedback, and get support.

Downloads

File Name Version Size Launch Date OS Bitness Description
Windows®

File Name

Version

1.4

Size

45 MB

Launch Date

04/10/2014

OS

Windows

Bitness

32/64-Bit

Description

AMD CodeXL 1.4 Windows®
Linux®

File Name

Version

1.4

Size

78 MB

Launch Date

04/10/2014

OS

Linux

Bitness

64-bit

Description

AMD CodeXL 1.4 - RPM Package

File Name

Version

1.4

Size

105 MB

Launch Date

04/10/2014

OS

Linux

Bitness

64-bit

Description

AMD CodeXL 1.4 - TGZ File

File Name

Version

1.4

Size

105 MB

Launch Date

04/10/2014

OS

Linux

Bitness

64-bit

Description

AMD CodeXL 1.4 – Linux Debian Package