Radeon™ Raytracing Analyzer source code available + meet amdrdf

Radeon Raytracing Analyzer

RRA helps you to investigate the performance of your raytracing applications and highlight potential bottlenecks. We’re excited to announce that we have made the source code for RRA available, which can now be downloaded from the RRA GitHub page.

The repo can be cloned using git or the source code can be downloaded as a .zip file. Full instructions on how to build RRA are included in the BUILD.md file or via the link in the README.md file.

Links

As well as viewing the source for RRA on GitHub, feel free to download the packaged binary (which comes with the rest of our Radeon Developer Tool Suite) or read our documentation.

AMD Radeon Data File

We’ve recently made a small library available on GitHub: amdrdf. This is a library which allows you to open, inspect, and create RDF files (short for Radeon Data File). You may have seen RDF in the wild already when you used tools like RRA which use it as the underlying storage mechanism. RDF is a container file that abstracts away the underlying details of how things are actually stored on disk. It provides a few common functions like support for compression without imposing a lot of structure on the client application.

The key concept of RDF is to have named chunks stored in the file. Each application has a set of chunk types it understands and will ignore all other chunks, making it easy to include data from multiple applications into one file. Chunks are referenced from a chunk index which makes it efficient to find the data you actually care about in the file.

amdrdf has two APIs for your convenience: A versioned and ABI-stable C API, and a C++ convenience API built on top that is compiled into the client application. amdrdf also comes with long-term support guarantees regarding API, ABI, and file format stability as outlined in the readme. If you’re planning to work on tools that interop with ours, we highly recommend using the amdrdf library which works on any reasonably modern C++ compiler over rolling your own solution.

Link

You may also be interested in...

RGA

Radeon™ GPU Analyzer

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

RGP

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.

Radeon™ Memory Visualizer

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

Radeon™ Developer Panel

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).

Latest news

AMD Matrix Cores (amd-lab-notes)

This first post in the ‘AMD lab notes’ series takes a look at AMD’s Matrix Core technology and how best to use it to speed up your matrix operations.

Looking for a good place to get started with exploring GPUOpen?

Getting started: our software

New or fairly new to AMD’s tools, libraries, and effects? This is the best place to get started on GPUOpen!

Getting started: development and performance

Looking for tips on getting started with developing and/or optimizing your game, whether on AMD hardware or generally? We’ve got you covered!

You may also like...

Explore our huge collection of detailed tutorials, sample code, presentations, and documentation to find your answers to your graphics development questions.

Create wonder. No black boxes.

The home of great performance and optimization advice for AMD RDNA™ 2 GPUs, AMD Ryzen™ CPUs, and so much more.

Browse all our useful samples. Perfect for when you’re needing to get started, want to integrate one of our libraries, and much more.

Discover what our SDK technologies can offer you. Query hardware or software, manage memory, create rendering applications or machine learning, and much more!

Analyze, Optimize, Profile, Benchmark. We provide you with the developer tools you need to make sure your game is the best it can be!