The AMD GPU Performance API (AMD GPUPerfAPI, or GPA) is a powerful library, providing access to GPU Performance Counters. It can help analyze the performance and execution characteristics of applications using an AMD Radeon™ GPU.
AMD GPUPerfAPI is used by the AMD Radeon™ GPU Profiler, as well as several third-party tools including Microsoft PIX on Windows and RenderDoc.
Download the latest version - v4.2
This release adds the following features:
- Support for additional AMD RDNA™ 4 architecture hardware (AMD Radeon™ RX 9060 GPUs).
- Support for additional AMD RDNA 3.5 architecture-based APUs (AMD Ryzen™ AI 5 330 Processor with AMD Radeon 820M Graphics).
- DirectX 11: GPUPerfAPIDXGetAMDDeviceInfo-x64.dll has been removed in favor of Windows Graphics Settings to force select the GPU.
- GpaGetDeviceMaxWaveSlots() reliability issues have been fixed for DX12.
- GpaGetDeviceMaxVgprs() entry point has been added.
- Synchronized access to HW counters using an IPC Mutex when using Windows to prevent multiple apps trying to access the HW counters at the same time.
- Fixed edge case in parsing SPM data for AMD Radeon RX 6000 and RX 5000 Series graphics hardware.
- Fixed bug where the DX12 GPA implementation held onto strong references of D3D objects.
- Removed problematic counters from affecting AMD Radeon RX 6000 Series hardware (VsGsVALUBusy, VsGsVALUBusyCycles, VsGsSALUBusy, VsGsSALUBusyCycles).
- cacheFlushOnCounterCollection was being inconsistently set by GPA affecting discrete counter output.
- Fixed GL2C* counters issue affecting AMD Radeon RX 9000 Series graphics hardware.
- Fixed WriteSize and FetchSize counters on AMD Radeon RX 9000 Series graphics hardware. It was not accounting for all sized reads/writes.
- Fixed build/test issue preventing users from passing skipvulkan and skpopengl to the build on Windows®.
- Fixed issue causing release builds taking far longer than they should during the linker step on Windows.
Features
- Provides a standard API for accessing GPU Performance counters for both graphics and compute workloads across multiple GPU APIs.
- Supports Vulkan®, DirectX® 12, DirectX® 11, and OpenGL®.
- Supports all recent AMD RDNA™ architecture-based graphics cards and APUs based on Graphics IP version 10 and newer.
- Supports both Windows® and Linux®.
- Provides derived “public” counters based on raw HW counters.
- Provides access to some raw hardware counters. See Raw Hardware Counters for more information.
Requirements
Supported GPUs
- AMD Radeon™ AI PRO R9700 Graphics
- AMD Radeon™ RX 9000 Series Graphics
- AMD Radeon™ RX 7000 Series Graphics
- AMD Radeon™ RX 6000 Series Graphics
- AMD Radeon™ RX 5000 Series Graphics
- AMD Ryzen™ AI Max 300 Series Processors with Radeon™ 8000S Series Graphics
- AMD Ryzen™ AI 300 Series Processors with Radeon™ 800M Series Graphics
- AMD Ryzen™ 8000 Series Processors with Radeon™ 700M Series Graphics
- AMD Ryzen™ 7000 Series Processors with Radeon™ 700M Series Graphics
Supported graphics APIs
- DirectX® 12
- Vulkan®
- DirectX® 11
- OpenGL®
Supported OSs
- Windows® 10
- Windows® 11
- Linux® – Ubuntu 24.04 LTS