231825271-A_AMD_Radeon_GPU_Analyzer_Lockup_RGB_Wht

Analyze.

Adjust.

Accelerate.

Now available as part of the Radeon™ Developer Tool Suite.

Radeon™ GPU Analyzer is an offline compiler and performance analysis tool for DirectX®, Vulkan®, SPIR-V™, OpenGL®, and OpenCL™.

  • RGA is now available as part of the Radeon Developer Tool Suite, together with RGP, RMV, RGD, RRA, and RDP.
  • For the best experience, we encourage you to use the suite to ensure compatibility between the different tools.

Download the latest version - v2.9

This release includes:

  • Analyze pre-compiled Code Object binaries to inspect the ISA disassembly and analyze VGPR pressure and static hardware resource allocation. This is supported in both the GUI application and the command line tool.
  • Using the new Binary Analysis mode, you can now analyze pre-compiled HIP binaries for the MI-200 architecture in addition to any of RGA’s existing targets.
  • The RGA command line tool now captures the debug output when compiling DX12 pipelines with the D3D Debug Layer enabled (–debug-layer).

Features

Inspect your ISA...

Analyze the ISA for your shader stages within a Vulkan® graphics or compute pipeline.

...compile for many products...

Select target GPUs for the compilation process. You can search for available targets by using specific GPU architecture or even retail product names, like “SSG” or “WX 8200”.

...refine your resources...

View register pressure and LDS/scratch memory usage for your target hardware.

RGA visualize vgpr pressure

...visualize VGPR pressure...

Jump to areas in your code with maximum VGPR pressure

...and correlate your code!

For OpenCL™ kernels, the tool provides correlation from high-level source code to the disassembly, and from the disassembly to the high-level source code.

Visual Studio Code Extension for Radeon™ GPU Analyzer

Requirements

General

For all non-offline modes (DirectX®12, DXR, Vulkan®):

Offline modes (Vulkan® offline, DirectX®11, OpenGL™, OpenCL™, and Binary Analysis) can run without AMD driver or hardware installed.

Supported GPUs

RGA supports the following as targets when compiling graphics shaders and pipelines:

  • All RDNA-based architectures.
  • Vega™ architecture is only supported on systems with a legacy GCN-compatible driver.
  • The new Binary Analysis mode supports Code Objects that were pre-compiled for MI-200 in addition to all other supported targets.

Supported APIs in GUI

  • Vulkan®
  • OpenCL™
  • HIP, DXR, DirectX® 12 (Binary Analysis only)

Supported APIs in command line

  • Vulkan®
  • DirectX® 11
  • DirectX® 12
  • DXR
  • OpenGL®
  • OpenCL™

Supported OSs

  • Windows® 10
  • Windows® 11
  • Ubuntu 22.04

Version history

  • Compile and analyze shaders and kernels for the gfx1101 (AMD Radeon RX 7800 XT and RX 7700 XT) and gfx1103 (AMD Radeon 740M, 760M and 780M) architectures.
  • Use the latest HLSL Shader Model features on any system with Agility SDK when compiling D3D12 pipelines.
  • VGPR pressure GUI: the UI now visualizes VGPR pressure in the disassembly view at the instruction level, allowing you to spot areas in your code that have the highest VGPR pressure and helping you identify where to focus your optimization.
    The UI shows the allocation and usage of VGPRs for each instruction, and hints on how many VGPRs need to be reduced to reduce the allocation.
  • Jump to areas in your shaders and kernels which have maximum VGPR pressure using the RGA GUI application. After successfully compiling your shader, use:
    • Edit -> Go to next maximum VGPR pressure line (Ctrl+F4) , or:
    • Right-click on any ISA disassembly line -> Go to next maximum VGPR pressure line (Ctrl+F4).
  • New Vulkan offline compiler, using AMD’s LLVM-based pipeline compiler.
  • Compile and analyze shaders and kernels for the RDNA3™ architecture (gfx1100), even without a physical RDNA3™ card installed on your system.
  • VGPR pressure GUI: the UI now visualizes VGPR pressure in the disassembly view at the instruction level, allowing you to spot areas in your code that have the highest VGPR pressure and helping you identify where to focus your optimization.
    The UI shows the allocation and usage of VGPRs for each instruction, and hints on how many VGPRs need to be reduced to reduce the allocation.
  • Jump to areas in your shaders and kernels which have maximum VGPR pressure using the RGA GUI application. After successfully compiling your shader, use:
    • Edit -> Go to next maximum VGPR pressure line (Ctrl+F4) , or:
    • Right-click on any ISA disassembly line -> Go to next maximum VGPR pressure line (Ctrl+F4).
  • DirectX®11 mode (-s dx11) is now an offline mode and works regardless of the installed driver. Support in this mode was limited to VS, PS and CS.
  • Updates to Vulkan and OpenGL® backend components.
  • OpenCL™ mode now uses an updated version of AMD’s LLVM-based Lightning Compiler.
  • Added support for gfx1034 as a target in Vulkan®, DirectX® 12, DXR, DirectX® 11, OpenCL™and OpenGL modes.
  • DirectX® 12 mode: you can now extract AMDIL disassembly for DirectX® 12 compute and graphics shaders.
  • DXR and DirectX® 12 offline modes:
    • You can now compile DXR and DirectX® 12 shaders and pipelines on machines that do not have an installed AMD card or driver by adding the –offline command line switch to your RGA command.
      The tool ships with the latest released AMD DXR/DirectX® 12 driver at the time of the tool’s release, and it would use that driver if –offline is specified.
    • Plug & play DXR/DirectX® 12 driver: force RGA to load amdxc64.dll from a specific location by using the new –amdxc command line switch. This option also works on machines which do not have an AMD DXR/DX12 driver installed.
  • VGPR pressure GUI: the UI now visualizes VGPR pressure in the disassembly view at the instruction level, allowing you to spot areas in your code that have the highest VGPR pressure and helping you identify where to focus your optimization.
    The UI shows the allocation and usage of VGPRs for each instruction, and hints on how many VGPRs need to be reduced to reduce the allocation.
  • Added support for gfx1032 as a target in Vulkan®, DirectX® 12, DXR, DirectX® 11, OpenCL™, and OpenGL modes.
  • OpenCL™:
    • Added support for RDNA™, RDNA™ 2, and CDNA targets, including the Radeon™ Instinct MI100.
    • Updated the Lightning Compiler package that is bundled with the tool.
    • Added support for live VGPR analysis and control-flow graph generation ( --livereg and --cfg options).
    • Note: ROCM-CL mode ( -s rocm-cl ) was replaced with an “Offline OpenCL” mode ( -s opencl ).
  • DirectX® 12:
    • Support for multi-GPU configurations where the primary display adapter is a non-AMD card. The tool will now use the driver that is associated with the first AMD display adapter on the system. 
  • Vulkan®:
    • Live VGPR analysis and control-flow graph can now be generated from LLPC disassembly.
    • Updated the SPIR-V tools that are packaged with the tool.
  • Support for DirectX® Raytracing (DXR) in a new mode of the command line tool ( -s dxr ):
    • Compile DXR HLSL code to generate RDNA™ 2 ISA disassembly, hardware resource usage statistics, live VGPR analysis, and control-flow graphs.
    • The new mode does not require a raytracing-enabled AMD GPU. Installing the latest Radeon™ Adrenalin Software is sufficient.
  • Improved performance in the GUI app to better handle shaders with large disassembly.
  • Updated static analysis engine with support for the latest RDNA™ 2 instructions and bug fixes.
  • (v2.4.2 only) Added support for gfx1031 (RX 6700 XT) in Vulkan®, DirectX®12, DirectX® Raytracing, DirectX®11, and OpenGL™ modes.
  • RGA is now available as part of the Radeon™ Developer Tool Suite.
  • Added support for RX6000 series in DirectX®12, DirectX®11, Vulkan®, Vulkan-Offline, OpenGL®, and OpenCL™ modes.
  • Added support for Navi12 (gfx1011) and Renoir (gfx909) as targets in DX12, DX11, Vulkan, Vulkan-offline and OpenGL modes.
  • Bug fixes and usability enhancements.
  • Added support for DX12 graphics pipelines compilation in command line tool.
  • Added support for Navi14.
  • Live register analysis and control-flow graph generation support for RDNA targets.
  • DX11 mode accepts DXBC binaries as an input.
  • Vulkan mode reports when shaders were merged.
  • Support for RDNA targets in OpenCL legacy mode.
  • Add command line support for DirectX® 12 compute shaders.
  • Support for RDNA targets in Vulkan, Vulkan offline, DX12, DX11 and OpenGL modes.
  • Adds support for Vulkan® in the GUI.
  • Shows a summary of the resources used by your shaders (VGPR, SGPR and LDS).
  • Initial release.

Related to Radeon™ GPU Analyzer

Radeon Developer Tool Suite
Radeon Raytracing Analyzer

Radeon™ Raytracing Analyzer (RRA) is a tool which allows you to investigate the performance of your raytracing applications and highlight potential bottlenecks.

The RDP provides a communication channel with the Radeon™ Adrenalin driver. It generates event timing data used by the Radeon™ GPU Profiler (RGP), and the memory usage data used by the Radeon™ Memory Visualizer (RMV).

Radeon™ Memory Visualizer (RMV) is a tool to allow you to gain a deep understanding of how your application uses memory for graphics resources.

AMD Radeon GPU Profiler

RGP gives you unprecedented, in-depth access to a GPU. Easily analyze graphics, async compute usage, event timing, pipeline stalls, barriers, bottlenecks, and other performance inefficiencies.

Our other tools

GPU Reshape

GPU Reshape is a powerful tool that leverages on-the-fly instrumentation of GPU operations with instruction level validation of potentially undefined behavior.

AMD Radeon GPU Detective logo

Radeon™ GPU Detective (RGD) is a tool for post-mortem analysis of GPU crashes. RGD can capture AMD GPU crash dumps from DirectX® 12 apps.

AMD OCAT

If you want to know how well a game is performing on your machine in real-time with low overhead, OCAT has you covered.

AMD Compressonator

Compressonator is a set of tools to allow artists and developers to more easily work with compressed assets and easily visualize the quality impact of various compression technologies.