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.
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.
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.
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
|Collect GPU Performance Counters of AMD Radeon™ graphics cards
|OpenCL™ Timeline visualization
|OpenCL™ Application Summary pages
|OpenCL™ Kernel Occupancy Viewer
|IL and ISA Display
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.
- Microsoft® Windows 7® (32 or 64-bit), Microsoft® Windows 8® (32 or 64-bit) or Microsoft® Windows 8.1® (32 or 64-bit)
- 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
- Quick Start Guide
- User Guide - You may need to right click on the file, go to Properties & click unblock to see the content.
- Release Notes
Please visit the CodeXL forum. The forum allows users to interact with the CodeXL team, provide feedback, and get support.