Documentation and more
Let us help you get your game to even higher levels of performance and visual quality!
Our engineers (and guest bloggers) have created a vast array of GPUOpen software blogs, technical blogs, samples, videos, papers, and much, much more for you to discover here on GPUOpen.
Featured GPUOpen software blogs
Introducing AMD Capsaicin Framework – our ARR Research Framework which includes our GI-1.0 sample
AMD Capsaicin Framework is a research framework for real-time graphics which we have been using to develop and test new and upcoming rendering algorithms. We are now releasing it to the public.
Radeonâ„¢ GPU Profiler 1.15 provides an enhanced ISA view experience and more
Radeon GPU Profiler v1.15 adds an enhanced user experience for GPU ISA disassembly, mesh shader event names, WMMA support, and more.
How to use the AMD FidelityFXâ„¢ Super Resolution 2 (FSR 2) Unreal Engine plugin
Find out how to install and configure the AMD FidelityFX Super Resolution (FSR) 2 plugin for Unreal Engine 4.26/4.27 and UE5.
Featured technical blogs
GPU Work Graphs in Microsoft DirectX® 12
Our primer on GPU Work Graphs introduces this exciting new paradigm for graphics developers, which enable a live shader kernel to dispatch new workloads on-demand without needing to circle back around to the CPU first.
Introduction – Matrix Compendium
The GPUOpen Matrix Compendium covers how matrices are used in 3D graphics and implementations in host code and shading languages. It’s a growing guide, so keep checking back!
Introducing AMD lab notes – new programming tutorials for HPC and ML
In this blog series, we share the lessons learned from tuning a wide range of scientific applications, libraries, and frameworks for AMD GPUs.
Want to find a blog quickly?
Unfold the table below and search for what you’re after.
the_page_ID | Blog title | Description | Originally posted | Author | page_taxonomy_category |
---|---|---|---|---|---|
~ID-063162 | CPU performance optimization guide – part 2 – cache invalidation | Part 2 shares a real-world problem of cache invalidation in CPU performance optimization, explaining how different data structures, compilers, and CPUs affect caching behavior and performance, and provides benchmarking and analysis techniques to address these issues. | 18th November 2024 | CPU Performance Optimization Guide | Article |
~ID-063056 | Meshlet compression – Mesh shaders on AMD RDNAâ„¢ graphics cards | We show how to diminish the memory footprint of meshlet geometry, thus both the index buffer and the vertex attributes. Decompression then happens on the fly on every frame in the mesh shader. | 1st November 2024 | mesh_shaders | Article |
~ID-062399 | Neural Supersampling and Denoising for Real-time Path Tracing | Read our research for a neural denoising and supersampling technique, with the aim of achieving real-time path tracing. | 28th October 2024 | AMD GPUOpen | Article |
~ID-062250 | Sampling from a Normal (Gaussian) Distribution on GPUs | Sampling the normal distribution is not as straightforward as it seems! Explore two GPU-friendly methods including implementation and performance evaluation. | 9th October 2024 | GPUOpen | Article |
~ID-060741 | The AMD FidelityFXâ„¢ SDK 1.1.1 is now available on GPUOpen | Our patch release includes some FSR 3.1 fixes, support for AL2, and code changes needed for the upcoming release of the Microsoft Game Development Kit (GDK). | 1st October 2024 | GPUOpen | Product blogs |
~ID-060609 | Radeon™ Raytracing Analyzer 1.7 adds user marker support for ray dispatches | RRA 1.7 lets you associate ray dispatch data from DirectX®12 and Vulkan® applications with a user-defined string called a user marker. | 3rd October 2024 | AMD GPUOpen | Product blogs |
~ID-059396 | Decoding instructions with the machine-readable AMD GPU ISA specifications | A simple C++ program demonstrating how easy it is to decode instructions using the IsaDecoder API. | 22nd August 2024 | AMD GPUOpen | Blogs |
~ID-059232 | Crash Course in Deep Learning (for Computer Graphics) | If you’re a graphics dev looking to understand more about deep learning, this blog introduces the basic principles in a graphics dev context. | 24th July 2024 | GPUOpen | Article |
~ID-059229 | GPU Work Graphs mesh nodes in Microsoft DirectX® 12 | Mesh nodes are a new type of leaf node in work graphs that, unlike all other nodes, does not invoke a compute shader, but dispatches a mesh-shader graphics pipeline instead. This blog series covers how to get started with mesh nodes as well as best practices. | 18th July 2024 | Work Graphs Mesh Nodes | Article |
~ID-059137 | Procedural generation – GPU Work Graphs Mesh Nodes in Microsoft DirectX® 12 | Mesh nodes makes it much simpler to implement a fully procedurally generated world. This blog post examines an example of procedural mesh node sample. | 18th July 2024 | Work Graphs Mesh Nodes | Article |
~ID-059136 | Getting started – GPU Work Graphs Mesh Nodes in Microsoft DirectX® 12 | The second part of this mesh nodes blog series focusses on initial setup of a new mesh nodes project and includes an example of a HelloMeshNodes solution. | 18th July 2024 | Work Graphs Mesh Nodes | Article |
~ID-057856 | Introducing the latest version of the AMD FidelityFXâ„¢ SDK – v1.1 | The AMD FidelityFX SDK v1.1 is now available. This update introduces three new FidelityFXâ„¢ technologies: FSR 3.1, Breadcrumbs, and BrixelizerGI. | 9th July 2024 | GPUOpen | Article |
~ID-057853 | Introducing the AMD FidelityFXâ„¢ Breadcrumbs library | We’re proud to introduce a brand-new FidelityFX technology: AMD FidelityFX Breadcrumbs. Breadcrumbs is a cross-platform library for post-morten analysis of GPU crashes. | 9th July 2024 | GPUOpen | Article |
~ID-057844 | Introducing AMD FidelityFXâ„¢ Brixelizer | As of FidelityFX SDK version 1.1, Brixelizer and Brixelizer GI are now unleashed to world so in this article we aim to discuss a few practical use cases and provide you with some tips you can apply for getting the most performance out of Brixelizer in your application. | 9th July 2024 | GPUOpen | Article |
~ID-057834 | AMD FidelityFXâ„¢ Super Resolution 3.1 released as part of FidelityFX SDK 1.1 | AMD FidelityFX Super Resolution (FSR) 3.1 is now available. This post details some of the major updates to this latest change to FSR. | 9th July 2024 | GPUOpen | Article |
~ID-057295 | Foliage in AMD FidelityFXâ„¢ Brixelizer GI | In this two-part blog series, we will investigate Brixelizer GI to pinpoint the problems faced with foliage-heavy scenes and then look solutions to adding support. | 17th July 2024 | Foliage Brix GI | Article,Product blogs |
~ID-057294 | Part 1: Foliage in AMD FidelityFX Brixelizer GI | This article describes Brixelizer GI’s functionality to better highlight the problem with foliage. | 17th July 2024 | Foliage Brix GI | Article,Product blogs |
~ID-057293 | Part 2: Extending AMD FidelityFX Brixelizer GI | To improve the quality of foliage in Brixelizer GI, we must modify the algorithm to support alpha-clipped geometry. | 17th July 2024 | Foliage Brix GI | Article,Product blogs |
~ID-057251 | CPU performance optimization guide – part 1 – branch prediction | This series of blogs will walk readers through the analysis of the problems encountered in actual projects, thus helping them to better understand the CPU performance optimization of programs. | 18th June 2024 | CPU Performance Optimization Guide | Article |
~ID-057250 | Preface to the CPU performance optimization guide | This article starts a series of posts about CPU performance analysis and optimization methods. | 18th June 2024 | CPU Performance Optimization Guide | Article |
~ID-057244 | New Radeon™ Developer Tool Suite Release migrates to Qt® version 6. | The latest version of the Radeon Developer Tool Suite is now available! This release features a number of updates including all GUI-based tools upgrading to Qt® v6.7.0. | 1st July 2024 | GPUOpen | Article |
~ID-057080 | Pre-condition block compressed textures with Brotli-G | Brotli-G (v1.1 onwards) now supports pre-conditioning of block compressed textures. Take a look for a quick summary! | 7th May 2024 | GPUOpen | Article,Product blogs |
~ID-057063 | AMD GPU architecture programming documentation | A repository of AMD Instruction Set Architecture (ISA) and Micro Engine Scheduler (MES) firmware documentation | 9th May 2024 | AMD GPUOpen | Article |
~ID-057054 | Application portability with HIP – AMD lab notes | This blog discusses various ROCm tools developers can leverage to port existing applications from CUDA to HIP. | 30th April 2024 | amd-lab-notes | Article,Product blogs |
~ID-057047 | C++17 parallel algorithms and HIPSTDPAR – AMD lab notes | This post discusses how to leverage C++17 parallel algorithms on AMD GPUs with HIPSTDPAR | 25th April 2024 | amd-lab-notes | Article,Product blogs |
~ID-056992 | Affinity part 2 – System topology and controlling affinity – AMD lab notes | This second part introduces common tools to understand the topology of your system and to control affinity for different applications | 17th April 2024 | amd-lab-notes | Article |
~ID-056991 | Affinity part 1 – Affinity, placement, and order – AMD lab notes | This first part introduces the concept of affinity and why its important for achieving better performance on AMD GPU nodes | 17th April 2024 | amd-lab-notes | Article |
~ID-056959 | DirectX®12 single shader compilation with Radeon™ GPU Analyzer (RGA) v2.9.1 | Radeon™ GPU Analyzer v2.9.1 now supports D3D12 shader compilation without requiring a completely defined pipeline state. RGA v2.9.1 is available now. | 24th April 2024 | GPUOpen | Article,Product blogs |
~ID-056944 | Radeonâ„¢ GPU Profiler 2.1 adds interoperability with Radeonâ„¢ GPU Analyzer (and more)! | RGP 2.1 adds RGA interoperability, ‘Color by’ modes, and additional customization options. Dive in for all the details! | 24th April 2024 | GPUOpen | Article,Product blogs |
~ID-056768 | Microsoft® DirectSR and AMD FidelityFX™ Super Resolution technology | With the introduction of Microsoft’s DirectSR, the need to integrate many super resolution APIs has been reduced. Instead, developers may integrate just one API – Microsoft DirectSR. | 29th May 2024 | GPUOpen | Product blogs |
~ID-056763 | Procedural grass rendering – Mesh shaders on AMD RDNAâ„¢ graphics cards | The fourth post in our mesh shaders series takes a look at the specific example of rendering detailed vegetation. | 20th March 2024 | mesh_shaders | Article |
~ID-056612 | Font and vector-art rendering with mesh shaders – Mesh shaders on AMD RDNAâ„¢ graphics cards | The third post in our mesh shaders series covers how to use mesh shaders to simplify font rendering. | 13th March 2024 | mesh_shaders | Article |
~ID-055800 | Introducing HIP RT v2.2 | With the release of v2.2, HIP RT now support multi-level instancing. Multi-level instancing can help to reduce memory requirements, allowing you to render large scenes with limited memory. | 30th January 2024 | GPUOpen | Article,Product blogs |
~ID-055681 | Optimization and best practices – Mesh shaders on AMD RDNAâ„¢ graphics cards | The second post in this series on mesh shaders covers best practices for writing mesh and amplification shaders, as well as how to use the AMD Radeonâ„¢ Developer Tool Suite to profile and optimize mesh shaders. | 16th January 2024 | mesh_shaders | Article |
~ID-055601 | Introducing Compressonator v4.5 with up to 20% improvement in Brotli-G compression | Compressonator v4.5 introduces improved BC1-BC5 compression that reduces file sizes on average by 10%-15% using a new Brotli-G zip packaging feature, mipmap changes, ETC codec fixes, and more. | 31st January 2024 | GPUOpen | Article,Product blogs |
~ID-055599 | GI-1.1 adds support for glossy reflections rendering | GI-1.1 is available now as part of the AMD Capsaicin Framework. GI-1.1 includes new support for glossy reflections rendering. | 19th March 2024 | GPUOpen | Article,Product blogs |
~ID-053789 | AMD FidelityFX Super Resolution 3.1.1 Unreal Engine plugin guide | Download the AMD FSR 3.1.1 plugin for Unreal Engine, and learn how to install and use it. | 14th December 2023 | GPUOpen | Article,Product blogs |
~ID-053782 | Radeon™ GPU Detective adds Vulkan® support on Windows® | The latest version of Radeon™ GPU Detective is out now! RGD v1.1 introduces support for post-mortem analysis of Vulkan applications on Windows. | 7th December 2023 | GPUOpen | Article,Product blogs |
~ID-053733 | Introducing Radeonâ„¢ GPU Profiler 2.0! | Radeonâ„¢ GPU Profiler 2.0 is packed with brand-new features and updates. This release includes a new customizable layout to the Wavefront Occupancy View, support for dark mode in UI, thread divergence monitoring in raytracing pipelines, and much more. | 7th December 2023 | GPUOpen | Article,Product blogs |
~ID-053703 | Occupancy explained | In this blog post we will try to demystify what exactly occupancy is, which factors limit occupancy, and how to use tools to identify occupancy-limited workloads. | 20th December 2023 | GPUOpen | Article |
~ID-053666 | How do I become a graphics programmer? – A small guide from the AMD Game Engineering team | It is often difficult to know where to start when taking your first in the world of graphics. This guide is here to help with a discussion of first steps and a list of useful websites. | 22nd November 2023 | GPUOpen | Article |
~ID-053635 | Radeonâ„¢ Memory Visualizer 1.8 is out now | Radeonâ„¢ Memory Visualizer 1.8 is available now. v1.8 enhances the Resource usage size timeline to better visualize overlapped aliased resources. | 7th December 2023 | GPUOpen | Article,Product blogs |
~ID-053620 | Announcing AMD RenderStudio – supporting collaborative 3D creation and rendering in the OpenUSD and MaterialX ecosystem | Introducing AMD RenderStudio – a set of tools for cross-user collaboration using the OpenUSD and MaterialX ecosystem. | 29th November 2023 | GPUOpen | Article,Product blogs |
~ID-053450 | Sparse matrix vector multiplication – part 1 – AMD lab notes | Sparse matrix vector multiplication (SpMV) is a core computational kernel of nearly every implicit sparse linear algebra solver. This is the first post in the series covering SpMV. | 3rd November 2023 | amd-lab-notes | Article |
~ID-053442 | Using HIP RT ray tracing library to accelerate fluid simulation | This blog post shows how it is possible to use HIP RT to accelerate neighbor search in Smoothed Particle Hydrodynamics (SPH) simulations. | 9th November 2023 | GPUOpen | Article,Product blogs |
~ID-053380 | Introducing HIP RT v2.1 – batch construction for small geometries, transformation query functions, and more | HIP Ray Tracing v2.1 adds support for batch construction, global/dynamic stacks, transformation query functions, plus other new features. | 27th October 2023 | GPUOpen | Product blogs |
~ID-053079 | Introducing GPU Reshape – shader instrumentation for everyone | GPU Reshape brings powerful features typical of CPU tooling to the GPU, providing validation of dynamic behaviour. Read on for all of the details. | 18th January 2024 | GPUOpen | Article,Guest blogs,Product blogs |
~ID-053039 | Work graphs API – compute rasterizer learning sample | Learn more about the power of work graphs API in our detailed blog, taking you step-by-step through an example which implements a scanline rasterizer. | 13th October 2023 | GPUOpen | Article |
~ID-049845 | Jacobi Solver with HIP and OpenMP offloading – AMD lab notes | In this blog, we explore GPU offloading using HIP and OpenMP target directives and discuss their relative merits in terms of implementation efforts and performance. | 25th September 2023 | amd-lab-notes | Article,Product blogs |
~ID-047824 | Radeonâ„¢ Raytracing Analyzer now has ray dispatch features | Radeon Raytracing Analyzer v1.3 adds the ability to inspect casted rays in 3D and examine ray traversal statistics. Check it out now! | 21st September 2023 | GPUOpen | Article,Product blogs |
~ID-047817 | Radeonâ„¢ Memory Visualizer 1.7 is out now | Radeonâ„¢ Memory Visualizer v1.7 introduces one of the most anticipated new features: improved support for aliased resources in the Resource overview pane. Read on for details of this features and more. | 21st September 2023 | GPUOpen | Article,Product blogs |
~ID-047809 | Radeonâ„¢ GPU Profiler 1.16 is here! | Radeon GPU Profiler v1.16 updates the GPU ISA disassembly view, adds improved dark mode support, and more. | 21st September 2023 | GPUOpen | Article,Product blogs |
~ID-046795 | Creating a PyTorch/TensorFlow Code Environment on AMD GPUs – AMD lab notes | The machine learning ecosystem is quickly exploding and this article is designed to assist data scientists/ML practitioners get their machine learning environments up and running on AMD GPUs. | 11th September 2023 | amd-lab-notes | Article |
~ID-045550 | Getting Started with Radeonâ„¢ GPU Detective 1.0 | Radeon GPU Detective (RGD) is a brand-new tool which is designed to help you capture and investigate GPU crashes. This tutorial covers how to use RGD to capture a crash and how to interpret the results it produces. | 17th August 2023 | GPUOpen | Article,Product blogs |
~ID-045459 | CPU profiling for Unity | This is a general guide focusing on CPU profiling for Unity, including which tools are useful for profiling and how to use these tools to find hotspots in your code. | 5th January 2024 | GPUOpen | Article |
~ID-045076 | New Work Graphs sample & RGP support for GPU Work Graphs | “D3D12SimpleClassify” shows the use of a GPU Work Graph in a simple frame-based graphics application, plus learn about new RGP support. | 29th August 2023 | GPUOpen | Product blogs |
~ID-044925 | Finite difference method – Laplacian part 4 – AMD lab notes | In the fourth and final part of Finite Difference Laplacian blog series we cover scaling studies and cache size limitations | 18th July 2023 | amd-lab-notes | Article |
~ID-044800 | Effective Use of the New D3D12_HEAP_TYPE_GPU_UPLOAD | The D3D12_HEAP_TYPE_GPU_UPLOAD flag in Direct3D 12 provides a good alternative to other ways of uploading data from the CPU to the GPU. Check out our quick guide to effective use of this flag. | 17th July 2023 | GPUOpen | Article |
~ID-044262 | Integrating AMD FidelityFX™ Super Resolution 2 (FSR 2) into Unity URP (DX11) | Want to add FSR 2 to your Unity URP project? Take a look at our quick-start guide to get you up and running. (DirectX®11 only) | 11th July 2023 | GPUOpen | Product blogs |
~ID-043433 | Introduction – Matrix Compendium | The GPUOpen Matrix Compendium covers how matrices are used in 3D graphics and implementations in host code and shading languages. It’s a growing guide, so keep checking back! | 5th April 2023 | Matrix Compendium | Article |
~ID-041980 | The AMD FidelityFXâ„¢ SDK 1.0 is now available on GPUOpen | The AMD FidelityFX SDK is now available! The SDK is AMD FidelityFX graphics middleware helping you to integrate AMD FidelityFX features into your games without any hassle. | 12th July 2023 | GPUOpen | Product blogs |
~ID-041861 | Tips and Tricks – GPU Work Graphs | Our final part in our GPU Work Graphs primer shares tips and tricks, and links to where you can find out more. | 22nd June 2023 | GPU Work Graphs | Article |
~ID-041860 | Building Blocks – GPU Work Graphs | Build upon what you learned in Part 1 of Work Graphs with topics such as input and output records, SV_DispatchGrid, NodeLaunch modes, and recursion. | 22nd June 2023 | GPU Work Graphs | Article |
~ID-041859 | GPU Work Graphs in Microsoft DirectX® 12 | Our primer on GPU Work Graphs introduces this exciting new paradigm for graphics developers, which enable a live shader kernel to dispatch new workloads on-demand without needing to circle back around to the CPU first. | 22nd June 2023 | GPU Work Graphs | Article |
~ID-041858 | Getting Started – GPU Work Graphs | Find out what you need to get started with Work Graphs for DirectX 12, including the software required, configuration, compiling, and more. | 22nd June 2023 | GPU Work Graphs | Article |
~ID-040140 | GPU-aware MPI with ROCm – amd-lab-notes | MPI is the de facto standard for inter-process communication in High-Performance Computing. This post will guide you through the process of setting up an MPI application that supports execution on GPU clusters. | 8th June 2023 | amd-lab-notes | Article,Product blogs |
~ID-039589 | Register pressure in AMD CDNA2â„¢ GPUs – amd-lab-notes | Register pressure of GPU kernels has a tremendous impact on performance. This post provides a practical demo on applying recommendations. | 17th May 2023 | amd-lab-notes | Article |
~ID-039554 | Finite Difference Method – Laplacian part 3 – amd-lab-notes | In this third part, we cover additional optimizations to fine tune the performance of the kernel, and introduce temporary files, register pressure, and occupancy. | 11th May 2023 | amd-lab-notes | Article |
~ID-039402 | RPS Tutorial Part 3 – Interoperation between RPS and the host | This tutorial guides the reader through extended RPS API usage for data interoperation of the host app and the RPS runtime. | 3rd May 2023 | RPS Tutorial | Product blogs |
~ID-039401 | RPS Tutorial Part 2 – Exploring Render Graphs and RPSL | In this tutorial part, we will answer key questions regarding RPSL, and we’ll develop a deeper understanding of the RPS render graph. | 3rd May 2023 | RPS Tutorial | Product blogs |
~ID-039400 | RPS SDK Tutorial | This tutorial demonstrates key RPS SDK API usage, provides an informal introduction to RPSL, and explains how the RPS Render Graph is built. | 3rd May 2023 | RPS Tutorial | Product blogs |
~ID-039399 | RPS Tutorial Part 1 – Hello Triangle | This tutorial guides the reader through basic RPS API usage by transforming an existing hello triangle example into an RPS one. | 3rd May 2023 | RPS Tutorial | Product blogs |
~ID-039398 | RPS Tutorial Part 4 – RPS SDK multithreading guide | This tutorial guides the reader through how to record graph commands from multiple threads, and how to record API commands from within a callback in a multithreaded way. | 3rd May 2023 | RPS Tutorial | Product blogs |
~ID-039386 | Render Pipeline Shaders 1.1 is now available with Linux support and other improvements | The latest release of the Render Pipeline Shaders (RPS) SDK adds Linux support, the ability to dynamically load Vulkan functions, and more. Check out this post for the full release notes. | 3rd May 2023 | GPUOpen | Blogs,Product blogs |
~ID-039383 | Introducing AMD Capsaicin Framework – our ARR Research Framework which includes our GI-1.0 sample | AMD Capsaicin Framework is a research framework for real-time graphics which we have been using to develop and test new and upcoming rendering algorithms. We are now releasing it to the public. | 9th May 2023 | GPUOpen | Blogs,Product blogs |
~ID-039055 | Radeonâ„¢ Memory Visualizer 1.6 introduces improved device configuration info and an expanded Resource details pane | Radeon Memory Visualizer v1.6 adds improved device configuration information, and more parameters on the resource details pane. | 24th April 2023 | GPUOpen | Article,Product blogs |
~ID-039052 | Radeonâ„¢ Raytracing Analyzer 1.2 adds ray face culling flags, ray traversal histograms, and more | Radeon Raytracing Analyzer v1.2 introduces ray face culling flags, a ray traversal histogram, a geometry list pane, and an instance mask. | 24th April 2023 | GPUOpen | Article,Product blogs |
~ID-039051 | Radeonâ„¢ GPU Profiler 1.15 provides an enhanced ISA view experience and more | Radeon GPU Profiler v1.15 adds an enhanced user experience for GPU ISA disassembly, mesh shader event names, WMMA support, and more. | 24th April 2023 | GPUOpen | Article,Product blogs |
~ID-038937 | Introduction to profiling tools for AMD hardware (amd-lab-notes) | This post gives an overview of AMD’s open source profiling tools, helping you diagnose bottlenecks and understand how your application is using the hardware. | 12th April 2023 | amd-lab-notes | Article |
~ID-038919 | Introducing Compressonator v4.4 with AVX-512 support for BC1 Encoding | Compressonator v4.4 adds AVX-512, AVX2, and SSE4 variations of BC1 encoding in the Compressonator Core library, new CLI options, and more. | 10th July 2023 | GPUOpen | Blogs,Product blogs |
~ID-038795 | HIP Ray Tracing 2.0 introduces improved custom function handling, bitcode linking, and more | HIPRT-v2 is now available for download! This post covers some of the most exciting features and optimizations. | 28th March 2023 | GPUOpen | Product blogs |
~ID-037553 | Radeonâ„¢ ProRender SDK 3.1.0 introduces bevel shader support, light linking, and much more | We are happy to announce Radeonâ„¢ ProRender SDK 3.1.0 is finally available, so let’s take a look at the latest updates and improvements. | 10th March 2023 | GPUOpen | Blogs,Product blogs |
~ID-037066 | Introducing Compressonator v4.3 – Brotli-G, multi-texture mipmap generation, and more | Compressonator v4.3 is out now! v4.3 features Brotli-G lossless compression, multi-texture mipmap generation, and much more. | 27th January 2023 | GPUOpen | Blogs,Product blogs |
~ID-037035 | AMD ROCmâ„¢ installation (amd-lab-notes) | Installation of the AMD ROCmâ„¢ software package can be challenging. This introductory material shows how to install ROCm on a workstation with an AMD GPU card that supports the AMD GFX9 architecture. | 26th January 2023 | amd-lab-notes | Article,Product blogs |
~ID-036927 | Guest blog by EBB Software: Integrating AMD FidelityFXâ„¢ Super Resolution 2 (FSR 2) into Scorn | In this guest post by EBB Software, learn how they integrated our FSR 2.1 plugin for Unreal Engine into their first title: Scorn | 28th February 2023 | EBB Software | Blogs,Guest blogs,Product blogs |
~ID-036855 | Announcing GFXReconstruct (v0.9.17) with DirectX®12 and DirectX® Raytracing support | AMD and LunarG are pleased to announce DirectX®12 (D3D12) and DirectX® Raytracing (DXR) support for the GFXReconstruct capture/replay tool. | 18th January 2023 | GPUOpen | Blogs,Product blogs |
~ID-036749 | Finite difference method – Laplacian part 2 (amd-lab-notes) | In this post we introduce two common optimizations that can be applied to the kernel to reduce data movement and bring us closer to the new peak: loop tiling to explicitly reduce memory loads and re-order the memory access pattern to improve caching. | 4th January 2023 | amd-lab-notes | Article |
~ID-036468 | Introducing AMD Render Pipeline Shaders SDK | Render Pipeline Shaders (RPS) SDK is now available for open beta access! | 15th December 2022 | GPUOpen | Blogs,Product blogs |
~ID-034525 | RDNA 3: Radeon GPU Profiler 1.14 introduces support for Radeonâ„¢ RX 7000 Series, HIP, and more | Radeon GPU Profiler 1.14 is here, with support for Radeonâ„¢ RX 7000 series GPUs, profiling HIP applications, and much more. Take a look! | 14th December 2022 | Chris Hesik | Blogs,Product blogs |
~ID-032457 | Learn about Radeonâ„¢ Raytracing Analyzer 1.1 | The latest update for RRA includes changes to the camera system and support for split triangles and rebraided instances. Check it all out here! | 14th December 2022 | Anthony Hosier | Blogs,Product blogs |
~ID-030237 | Finite difference method – Laplacian part 1 (amd-lab-notes) | The finite difference method is a powerful tool for computational physics. This post covers how to implement a GPU-accelerated finite difference code using AMD’s HIP API. | 14th November 2022 | amd-lab-notes | Article |
~ID-030236 | 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. | 14th November 2022 | amd-lab-notes | Article |
~ID-030234 | Introducing AMD lab notes – new programming tutorials for HPC and ML | In this blog series, we share the lessons learned from tuning a wide range of scientific applications, libraries, and frameworks for AMD GPUs. | 14th November 2022 | amd-lab-notes | Article |
~ID-029366 | AMD FSR 2 UE plugin enhancements part 5: Making materials reactive: Applying the LitReactiveShadingModel patch | This final part demonstrates how to apply the LitReativeShadingModel patch which adds a new Lit Reactive shading model. | 19th October 2022 | GPUOpen | Article,Blogs,Product blogs |
~ID-029298 | AMD FSR 2 UE plugin enhancements part 3: Improving foliage appearance with the ImproveStaticWPO patch | Find out how to apply one of our supplied Unreal Engine patches to improve upscaled foliage appearance with our FSR 2.1 plugin. | 19th October 2022 | GPUOpen | Blogs,Product blogs |
~ID-029297 | AMD FSR 2 UE plugin enhancements part 2: Improving foliage appearance via content changes | Learn which content changes you can make in the Unreal Engine editor to improve the appearance of upscaled foliage. | 19th October 2022 | GPUOpen | Blogs,Product blogs |
~ID-029168 | AMD FSR 2 UE plugin enhancements part 4: Making a specific shading model write to the reactive mask | See ways you can improve suboptimal FSR 2 results caused by animated materials obscured by a fine mesh or grill with no motion vectors. | 19th October 2022 | GPUOpen | Blogs,Product blogs |
~ID-029030 | AMD FSR 2 UE plugin enhancements part 1: Intro & improving foliage appearance using the base pass | Discover one of several ways to improve upscaled foliage appearance in the first of this five part blog series on getting the most out of our FSR 2.1 Unreal Engine plugin. | 19th October 2022 | GPUOpen | Blogs,Product blogs |
~ID-026634 | Improving raytracing performance with the Radeonâ„¢ Raytracing Analyzer (RRA) | Optimizing the raytracing pipeline can be difficult. Discover how to spot and diagnose common RT pitfalls with RRA, and how to fix them! | 15th September 2022 | David DiGioia | Blogs,Product blogs |
~ID-025705 | How to use the AMD FidelityFXâ„¢ Super Resolution 2 (FSR 2) Unreal Engine plugin | Find out how to install and configure the AMD FidelityFX Super Resolution (FSR) 2 plugin for Unreal Engine 4.26/4.27 and UE5. | 24th June 2022 | GPUOpen | Blogs,Product blogs |
~ID-025484 | Latest updates to Radeonâ„¢ ProRender plug-ins | Find out more about all our updates to the Radeon ProRender plug-ins, including new fog and shadow settings for ProRender in Blender and Maya. | 8th June 2022 | Brian Savery | Blogs,Product blogs |
~ID-025448 | Announcing Radeonâ„¢ Memory Visualizer support for Linux | RMV is now available on Linux. RMV and RDP officially support Ubuntu 20.04 with Linux distros requiring additional dependencies. Check it out! | 13th June 2022 | Glen Kwasny | Blogs,Product blogs |
~ID-025067 | The “why” of multi-resolution geometric representation using Bounding Volume Hierarchy for ray tracing | The benefits of the level of details technique for ray tracing are not trivial. This blog explores the issues, giving the rationale for our new technique. | 9th May 2022 | Takahiro Harada | Article,Blogs |
~ID-024955 | Integrating VRS in The Riftbreaker | EXOR Studios and AMD have collaborated to add Variable Rate Shading in The Riftbreaker. Read this guest blog to find out more! | 13th May 2022 | GPUOpen | Blogs,Guest blogs |
~ID-024819 | TressFX 5.0 arrives as a patch for Unreal Engine | UE4 TressFX 5.0 has been designed to build upon the many features of UE4 TressFX 4.1, while being much easier to use. Find out what’s new! | 4th May 2022 | Lisen Wang | Blogs,Product blogs |
~ID-024662 | Radeonâ„¢ GPU Profiler 1.13 and Radeon Developer Panel 2.6 | RGP 1.13 adds enhanced ray tracing features, such as new performance counters and inline RT. RDP 2.6 includes improved data capture. | 21st April 2022 | Chris Hesik | Blogs,Product blogs |
~ID-024637 | Radeonâ„¢ Memory Visualizer 1.4 introduces Smart Access Memory support | Find out in this blog post how you can make all memory visible to the CPU in Radeon Memory Visualizer (RMV) v1.4 with Smart Access Memory. | 21st April 2022 | Glen Kwasny | Blogs,Product blogs |
~ID-023996 | Introducing HIP RT – a ray tracing library in HIP | HIP RT is a new ray tracing library for HIP. It makes it easy to write a ray tracing app using HIP. Check out this page for more information. | 12th April 2022 | GPUOpen | Blogs,Product blogs |
~ID-023170 | Announcing Vulkan Memory Allocator 3.0.0 and Direct3D 12 Memory Allocator 2.0.0 | Find out more about the latest releases of VMA and D3DMA – our easy-to-integrate memory allocation libraries for Vulkan® and Direct3D® 12. | 25th March 2022 | Adam Sawicki | Blogs,Product blogs |
~ID-022683 | Primitive variables, flexible ramp node, beta support for HIP in Radeonâ„¢ ProRender SDK 2.02.11 | The latest release of the ProRender SDK introduces support for primitive variables, enhanced Cryptomatte AOVs, AMD’s HIP API, and much more. | 7th March 2022 | Takahiro Harada | Blogs,Product blogs |
~ID-022639 | Introducing Orochi – dynamic loading of HIP/CUDA® from a single binary | Orochi is a library that loads HIP and CUDA driver APIs dynamically at runtime, eliminating the overhead of maintaining separate backends. | 1st April 2022 | GPUOpen | Blogs,Product blogs |
~ID-021948 | Radeonâ„¢ GPU Profiler 1.12 features improvements to Instruction Timing | RGP 1.12 provides some significant enhancements to the Instruction Timing feature, including wavefront filtering and single-wavefront mode. | 20th January 2022 | Chris Hesik | Blogs,Product blogs |
~ID-021824 | Visualizing VGPR Pressure with Radeonâ„¢ GPU Analyzer 2.6 | Radeon GPU Analyzer 2.6 introduces VGPR Pressure Visualization. This post explains exactly how to get the most out of this brand-new feature. | 20th January 2022 | Amit Ben-Moshe | Blogs,Product blogs |
~ID-021698 | Viewing DirectX® 12 Named Resources with Radeon™ Memory Visualizer 1.3 | Radeon Memory Visualizer (RMV) now supports Named Resources in DirectX® 12 applications. This blog explains how you can view them in RMV. | 20th January 2022 | GPUOpen | Blogs,Product blogs |
~ID-021100 | Understanding Graphs in Radeon GPU Profiler and GPUView | Find out how to read and understand graphs in Radeon GPU Profiler and GPUView in order to optimize your game more effectively. | 3rd December 2021 | Adam Sawicki | Blogs,Product blogs |
~ID-021024 | New renderer backend and more in the updated Radeonâ„¢ ProRender SDK 2.02.10 | Introducing a new renderer backend and support for simpler volumes, cutting planes, and artistic control of shadow color. Also, new SDK tutorials are now available. | 17th December 2021 | Takahiro Harada | Blogs,Product blogs |
~ID-020878 | How to use AMD FidelityFXâ„¢ Super Resolution (FSR) 1.0 Unreal Engine 4 Plugin | Find out how to install and configure the AMD FidelityFX Super Resolution (FSR) 1.0 plugin for Unreal Engine 4. | 23rd November 2021 | GPUOpen | Blogs,Product blogs |
~ID-020439 | Vulkan’s Best Practice layer now has AMD-specific checks | Introducing AMD checks for the Vulkan® Best Practice validation layer! Find out more about how it now incorporates many of our performance suggestions. | 2nd September 2021 | Nadav Geva | Blogs |
~ID-020291 | Introducing Radeon™ ProRender SDK 2.02.6 | Introducing support for Apple M1, heterogeneous volume, and deepEXR. Plus improved CPU rendering, and toon contour rendering. | 31st August 2021 | Takahiro Harada | Blogs,Product blogs |
~ID-020260 | AMD USD™ Hydra™ plug-in for Blender® | Find out about our exciting new plug-in for Blender®, which uses the power of Open Standards to enable you to reference and assemble USDâ„¢, and use MaterialX. | 19th August 2021 | Brian Savery | Blogs,Product blogs |
~ID-019914 | Compressonator 4.2 – Features update for BC1 and BC7 codecs, and more | Compressonator v4.2 brings improvements for BC1 and BC7 codecs, plus API, SDK, and CMake updates. | 30th July 2021 | Navin Patel | Blogs,Product blogs |
~ID-019750 | Radeon™ GPU Profiler 1.11 released | RGP 1.11 introduces ray tracing call targets, enhancements to cache counters, and more. | 21st July 2021 | Chris Hesik | Blogs,Product blogs |
~ID-019308 | New Radeon™ ProRender plug-in updates | Our Blender® add-on, Autodesk® Maya® plug-in, and the SideFX® Houdiniâ„¢ (USD) plug-in now incorporate the latest Radeonâ„¢ ProRender SDK. | 7th July 2021 | Brian Savery | Blogs,Product blogs |
~ID-018196 | How to get the most out of Smart Access Memory (SAM) | Smart Access Memory (SAM) provides the CPU with direct access to all video memory. These guidelines help you to improve CPU and GPU performance using SAM. | 15th June 2021 | Oskar Homburg | Blogs |
~ID-017363 | Updated Radeon ProRender 2 SDK now available with many new features | Read about Cryptomatte support, light group AOVs, deformation motion blur, homogeneous volume support, and our toon material in Radeonâ„¢ ProRender. | 28th April 2021 | Takahiro Harada | Blogs,Product blogs |
~ID-016509 | Radeon™ GPU Profiler v1.10 introduces GPU cache counters, Vulkan® ray tracing, and more | This latest release adds support for GPU cache counters, Vulkan® ray tracing, the latest RDNAâ„¢ 2 GPUs, and more. | 1st April 2021 | Chris Hesik | Blogs,Product blogs |
~ID-016143 | Using Radeon™ GPU Analyzer v2.4.1 with DirectX® Raytracing | Radeon™ GPU Analyzer v2.4.1 introduces support for DXR shaders in a new mode of the command line tool. | 12th February 2021 | Amit Ben-Moshe | Blogs,Product blogs |
~ID-015339 | Hardware-Accelerated Ray Tracing in AMD Radeonâ„¢ ProRender 2.0 | With specific hardware acceleration features implemented, content creators can accelerate their rendering using AMD Radeonâ„¢ RX 6000 Series graphics cards with Radeonâ„¢ ProRender 2.0. | 23rd November 2020 | Takahiro Harada | Blogs,Product blogs |
~ID-015133 | Radeon™ GPU Profiler 1.9 introduces support for Radeonâ„¢ RX 6000 Series | The latest release of RGP introduces support for Radeonâ„¢ RX 6000 Series (RDNAâ„¢ 2) and DirectX® Raytracing, along with several additional new features. | 23rd November 2020 | Chris Hesik | Blogs,Product blogs |
~ID-015006 | GPUPerfAPI v3.7 includes Radeon™ RX 6000 support and new raytracing counters | GPUPerfAPI v3.7 brings support for Radeon™ RX 6000 series GPUs, new raytracing counters for DirectX® Raytracing, a new scalar and instruction cache counter, and new raytracing High-Frequency counters in Microsoft® PIX2. | 23rd November 2020 | Amit Prakash | Blogs,Product blogs |
~ID-014939 | Compressonator 4.1 – SNORM support for BC4/BC5, MIP map filter support, and more | Compressonator v4.1 adds SNORM support for BC4 and BC5, MIP map filter support using either GPU or CPU, GPU-based compression and MIP map generation, and much more. | 23rd November 2020 | Navin Patel | Blogs,Product blogs |
~ID-014806 | Radeon™ Memory Visualizer v1.1 adds support for aliased resources and more | Radeon Memory Visualizer V1.1 introduces support for aliased resources, and allows selection of a resource in the memory leak finder pane. | 23rd November 2020 | Anthony Hosier | Blogs,Product blogs |
~ID-014548 | International Women’s Day – GPUs, chips, and games: working at AMD DevTech | One of our Developer Technology Engineers, Lou Kramer, talks about the journey to start her career with AMD, what she actually does, and how she finds being a woman in engineering. | 8th March 2021 | Lou Kramer | Blogs |
~ID-014293 | FidelityFX-CLI – Testing FSR and AMD FidelityFXâ„¢ CAS at the command-line | FidelityFX-CLI is a command-line Windows® program to test FidelityFX Super Resolution (FSR) 1.0 and Contrast Adaptive Sharpening (CAS) on image files. | 28th July 2021 | Adam Sawicki | Blogs,Product blogs |
~ID-014241 | Unified Radeon™ GPU Profiler and Radeon™ Memory Visualizer usage with Radeon™ Developer Panel 2.1 | This tutorial explains how to take advantage of the functionality in RDP v2.1 onwards, which unifies the RMV and RGP functionality from earlier versions to provide a unified workflow. | 1st October 2020 | Gordon Selley | Blogs,Product blogs |
~ID-014063 | Radeon™ GPU Profiler 1.8 released | The latest release of Radeonâ„¢ GPU Profiler introduces an updated Radeon Developer Panel, Instruction Timing, and more. | 14th September 2020 | Chris Hesik | Blogs,Product blogs |
~ID-013998 | Porting Detroit: Become Human from PlayStation® 4 to PC – Part 2 | Part 2 of this joint post between Quantic Dream and AMD looks at non-uniform resource indexing on PC and for AMD cards specifically. | 23rd September 2020 | Lou Kramer | Blogs,Guest blogs |
~ID-013997 | Porting Detroit: Become Human from PlayStation® 4 to PC – Part 1 | Porting the PS4® game Detroit: Become Human to PC presented some interesting challenges. This first part of a joint collaboration from engineers at Quantic Dream and AMD discusses the decision to use Vulkan® and talks shader pipelines and descriptors. | 21st September 2020 | Lou Kramer | Blogs,Guest blogs |
~ID-013823 | Porting Detroit: Become Human from PlayStation® 4 to PC – Part 3 | The final part of this joint series with Quantic Dream discusses shader scalarization, async compute, multithreaded render lists, memory management using our Vulkan Memory Allocator (VMA), and much more. | 25th September 2020 | Lou Kramer | Blogs,Guest blogs |
~ID-013579 | Integrating RenderDoc for Unconventional Apps | One of our engineers explains a few small code changes that can help you integrate RenderDoc for more unconventional applications. | 20th July 2020 | Matthäus Chajdas | Blogs |
~ID-012337 | Compressonator 4.0 – Utilize the Power of GPU-based Encoding | The Windows version of Compressonator 4.0 supports GPU encoding with DirectX® Compute (DXC) or OpenCLâ„¢ (OCL) shaders. | 10th May 2020 | Navin Patel | Blogs,Product blogs |
~ID-011724 | Getting Started with Radeonâ„¢ Memory Visualizer (RMV) | Radeonâ„¢ Memory Visualizer (RMV) is a tool provided by AMD for use by game engine developers. It allows engineers to examine, diagnose, and understand the GPU memory management within their projects. | 13th May 2020 | Colin Riley | Blogs,Product blogs |
~ID-011694 | Using the Visual Studio® Code Extension for RGA | This is a Visual Studio® Code extension for the Radeon GPU Analyzer (RGA). This extension makes it possible to use RGA directly from within VS Code. | 9th January 2020 | Rosanna Ashworth-Jones | Blogs,Product blogs |
~ID-008283 | Announcing Compressonator 3.2 | The latest version of Compressonator is now available, featuring new BCn codec kernels, framework interfaces, cube maps, and more. | 9th January 2020 | Navin Patel | Blogs,Product blogs |
~ID-008278 | Using AMD FreeSyncâ„¢ Premium Pro HDR: Code Samples | Part 4 of a series of posts on AMD FreeSyncâ„¢ Premium Pro Technology. Here, we look at how to enable FreeSync Premium Pro with all next gen graphics APIs. | 22nd January 2020 | Ihor Szlachtycz | Blogs,Product blogs |
~ID-008277 | Integrating AMD FidelityFXâ„¢ into the Ego Engine | Tom Hammersley from Codemasters talks about integrating FidelityFX into the Ego Engine and implementing Contrast Adaptive Sharpening (CAS). | 18th December 2019 | Tom Hammersley | Blogs,Guest blogs,Product blogs |
~ID-007833 | TrueAudio Next Acceleration of Steam Audio Sound Reflections | Higher levels of realism and believability can be achieved when accurate sound reflections are deployed in a game or experience. Spatialized, physically generated reflections can achieve this goal. | 21st October 2019 | Carl Wakeland | Blogs,Product blogs |
~ID-007825 | Using Radeon™ GPU Analyzer with DirectX®12 Graphics | With DirectX 12 comes the power of generating disassembly and hardware resource usage statistics that are closest to the real-world case, and therefore making better performance optimization decisions. | 14th October 2019 | Amit Ben-Moshe | Blogs,Product blogs |
~ID-007673 | Using Radeon™ GPU Analyzer with Direct3D®12 Compute | Radeon GPU Analyzer (RGA) has support for DirectX12 compute shaders with the command line tool. This mode can generate GCN/RDNA ISA disassembly for your compute shaders, regardless of the physically installed GPU. | 15th July 2019 | Amit Ben-Moshe | Blogs,Product blogs |
~ID-007529 | Using AMD FreeSyncâ„¢ Premium Pro HDR: Gamut Mapping | In this tutorial, we will be going over what gamut mapping is, how we implemented a gamut mapper to show how FreeSync HDR works, and some pitfalls with different gamut mapping algorithms. | 17th June 2019 | Ihor Szlachtycz | Blogs,Product blogs |
~ID-007493 | Using AMD Freesyncâ„¢ Premium Pro HDR: Tone Mapping | In part two of this tutorial, we cover the terminology of tone mapping, what tone mapping is, as well as different monitor features that influence how well a tone mapper will work. | 13th May 2019 | Ihor Szlachtycz | Blogs,Product blogs |
~ID-007332 | Using AMD FreeSyncâ„¢ Premium Pro HDR: Color Spaces | The first in a series of four tutorials related to AMD Freesyncâ„¢ Premium Pro HDR. This tutorial covers terminology related to color. | 20th March 2019 | Ihor Szlachtycz | Blogs,Product blogs |
~ID-007193 | Using Ryzen™ Threadripper for Game Development – optimising UE4 build times | Guest post by Sebastian Aaltonen, co-founder of Second Order. It covers optimising building the engine and asset production when using AMD Ryzen Threadripper processors. | 17th December 2018 | Sebastian Aaltonen | Blogs,Guest blogs |
~ID-007139 | New Compressonator 3.1 SDK for seamless integration into asset toolchains – and more! | This version contains several new features and optimizations, including new installers for the SDK, CLI and GUI tool, new batch compress support, improvements to Compressonator’s BC6H and ETC2 support, a new glTF model previewer, and more. | 21st November 2018 | Navin Patel | Blogs,Product blogs |
~ID-007019 | Decoding Radeon™ Vulkan® versions | A guide to using our machine-readable mapping that you can integrate into your software for decoding Radeonâ„¢ Vulkan® versions. | 2nd August 2018 | Rys Sommefeldt | Blogs |
~ID-006903 | Compressonator V3.0 release brings powerful new 3D model features | Compressonator is a set of tools that allows artists and developers to work easily with compressed assets and easily visualize the quality impact of various compression technologies. | 14th May 2018 | Rosanna Ashworth-Jones | Blogs,Product blogs |
~ID-006834 | Reducing Vulkan® API call overhead | This guest post, by Arseny Kapoulkine from Roblox, looks at the costs associated with calling various Vulkan functions tens or hundreds of thousands of times per frame, and ways to bring them down. | 26th April 2018 | Arseny Kapoulkine | Blogs,Guest blogs |
~ID-006686 | Understanding GPU context rolls | Learn what a context roll on our GPUs is, how they apply to the pipeline and how they’re managed, and what you can do to analyse them and find out if they’re a limiting factor in the performance of your game or application. | 29th June 2018 | Rys Sommefeldt | Blogs |
~ID-006609 | Deferred Path Tracing By Enscape | Insights from Enscape as to how they designed a renderer that produces path traced real time global illumination and can also converge to offline rendered image quality. | 6th December 2017 | Thomas Schander | Blogs,Guest blogs |
~ID-006575 | Compressonator V2.7 Release adds cross platform support and 3D Model compression with glTF v2.0 | Information about the new features and optimizations in Compressonator v2.7. | 27th November 2017 | Navin Patel | Blogs,Product blogs |
~ID-006564 | First Steps When Implementing FP16 | Half-precision (FP16) computation is a performance-enhancing GPU technology long exploited in console and mobile devices not previously used or widely available in mainstream PC development. | 20th April 2018 | Tom Hammersley | Blogs,Guest blogs |
~ID-006483 | Stable Barycentric Coordinates | The AMD GCN Vulkan extensions allow developers to get access to the barycentric coordinates at the fragment-shader level. | 30th August 2017 | Rys Sommefeldt | Blogs |
~ID-006359 | Understanding Vulkan® Objects | An important part of learning the Vulkan® API is to understand what types of objects are defined by it, what they represent and how they relate to each other. | 7th August 2017 | Adam Sawicki | Blogs |
~ID-006278 | Compressonator V2.6 release adds HDR tonemapping compression, new image analysis features | Information on the new features of Compressonator v2.6. | 3rd July 2017 | David Wilkinson | Blogs,Product blogs |
~ID-006013 | Optimizing GPU occupancy and resource usage with large thread groups | Sebastian Aaltonen, co-founder of Second Order Ltd, talks about how to optimize GPU occupancy and resource usage of compute shaders that use large thread groups. | 24th May 2017 | Sebastian Aaltonen | Blogs,Guest blogs |
~ID-005948 | Content Creation Tools and Multi-GPU | mGPU isn’t just for gamers – if you’re a developer working on a game, you should think of using mGPU to make your life easier. | 5th May 2017 | Matthäus Chajdas | Blogs,Product blogs |
~ID-005928 | CPU Core Count Detection on Windows® | Due to architectural differences between Zen and our previous processor architecture, Bulldozer, developers need to take care when using the Windows® APIs for processor and core enumeration. | 14th September 2017 | Ken Mitchell | Blogs |
~ID-005822 | Compressonator V2.5 release adds enhanced HDR support | The BC6H codec has been improved and now offers better quality than previous releases, along with support for both 16 bit Half Float and 32 bit Float formats per channel. | 29th March 2017 | Rosanna Ashworth-Jones | Blogs,Product blogs |
~ID-005567 | Live VGPR Analysis with Radeonâ„¢ GPU Analyzer | This tutorial explains how to use Radeon GPU Analyzer (RGA) to produce a live VGPR analysis report for your shaders and kernels. Basic RGA usage knowledge is assumed. | 21st March 2017 | Amit Ben-Moshe | Blogs |
~ID-005536 | Using Sub DWord Addressing on AMD GPUs | Sub DWord Addressing is a feature of the AMD GCN architecture which allows the efficient extraction of 8-bit and 16-bit values from a 32-bit register. | 24th February 2017 | Aditya Atluri | Blogs |
~ID-005519 | AMD LiquidVR™ MultiView Rendering in Serious Sam VR | Croteam’s Karlo Jez writes about AMD LiquidVR MultiView Rendering in Serious Sam VR with the GPU Services (AGS) Library. | 27th February 2017 | Karlo Jez | Blogs,Product blogs |
~ID-004861 | Profiling video memory with Windows® Performance Analyzer | A guide to using the Windows Performance Analyzer tool, with a focus on video resources. | 9th February 2017 | Cristian Cutocheras | Blogs,Product blogs |
~ID-004839 | AGS 5.0 – Shader Compiler Controls | Guide to using the shader compiler control API in AGS 5.0 | 12th January 2017 | Gareth Thomas | Blogs,Product blogs |
~ID-004824 | Optimizing Terrain Shadows | One thing which is often forgotten is shadow map rendering. As the tessellation level of the terrain is not optimized for the shadow camera, but for the primary camera, this often results in a very strong mismatch and shadow maps end up getting extremely over-tessellated. | 15th December 2016 | Matthäus Chajdas | Blogs |
~ID-004755 | Leveraging Asynchronous Queues for Concurrent Execution | Understanding concurrency (and what breaks it) is extremely important when optimizing for modern GPUs. | 1st December 2016 | Stephan Hodes | Blogs |
~ID-004567 | Selecting the Best Graphics Device to Run a 3D Intensive Application | 3D intensive application performance may suffer greatly if the best graphics device is not selected. As a developer you can easily fix this problem by adding only one line to your executable’s source code. | 16th November 2016 | Ken Mitchell | Blogs |
~ID-004487 | AMD Driver Symbol Server | How to set up the AMD Driver Symbol Server in Visual Studio. | 27th October 2016 | Gareth Thomas | Blogs |
~ID-004423 | Vulkan® Barriers Explained | Barriers control resource and command synchronisation in Vulkan applications and are critical to performance and correctness. Learn more here. | 18th October 2016 | Matthäus Chajdas | Blogs |
~ID-004415 | Implementing LiquidVRâ„¢ Affinity Multi-GPU support in Serious Sam VR | This guest post by Croteam’s Karlo Jez gives a detailed look at how Affinity Multi-GPU support was added to their game engine. | 31st October 2016 | Karlo Jez | Blogs,Guest blogs,Product blogs |
~ID-004342 | VDR Follow Up – Tonemapping for HDR Signals | Follow up on VDR and practical advice on adapting a game’s tonemapping pipeline to both traditional display signals and new HDR output signals. | 5th October 2016 | Timothy Lottes | Blogs,Product blogs |
~ID-004290 | Using RapidFire for Virtual Desktop and Cloud Gaming | RapidFire SDK captures and encodes the input images entirely on the GPU and then copies the encoded result into the system memory for processing on the CPU. | 27th September 2016 | Bruno Stefanizzi | Blogs,Product blogs |
~ID-004230 | Anatomy Of The Total War Engine: Part V | The final instalment in Tamas Rabel’s insight into developing the Total War engine looks at Multi-GPU. | 22nd August 2016 | Tamas Rabel | Blogs,Guest blogs |
~ID-004171 | The Importance of Audio in VR | The AMD TrueAudio Next open-source library and driver-controlled CU Reservation enables dramatically higher levels of audio rendering realism in VR. | 16th August 2016 | Carl Wakeland | Blogs,Product blogs |
~ID-004145 | Anatomy Of The Total War Engine: Part IV | Tamas Rabel talks about how Total War: Warhammer utilized asynchronous compute to extract some extra GPU performance in DirectX® 12 and delves into the process of moving some of the passes in the engine to asynchronous compute pipelines. | 16th August 2016 | Tamas Rabel | Blogs,Guest blogs |
~ID-004082 | Anatomy Of The Total War Engine: Part III | Here’s Tamas Rabel again with some juicy details about how Creative Assembly brought Total War to DirectX® 12. | 10th August 2016 | Tamas Rabel | Blogs,Guest blogs |
~ID-003953 | AMD GCN Assembly: Cross-Lane Operations | Cross-lane operations are an efficient way to share data between wavefront lanes. This article covers in detail the cross-lane features that GCN3 offers. | 10th August 2016 | Ben Sander | Blogs |
~ID-003919 | Anatomy Of The Total War Engine: Part II | Tamas Rabel from Creative Assembly discusses how performance was measured with the Total War Engine. | 3rd August 2016 | Tamas Rabel | Blogs,Guest blogs |
~ID-003859 | Vulkan® and DOOM | This post takes a look at the interesting bits of helping id Software with their DOOM Vulkan effort, from the perspective of AMD’s Game Engineering Team. | 10th November 2016 | Timothy Lottes | Blogs |
~ID-003855 | Anatomy Of The Total War Engine: Part I | Tamas Rabel, Lead Graphics Programmer on the Total War series provides a detailed look at the Total War renderer as well as digging deep into some of the optimizations that the team at Creative Assembly did for the brilliant, Total War: Warhammer. | 27th July 2016 | Tamas Rabel | Blogs,Guest blogs |
~ID-003720 | Texel Shading | Game engines do most of their shading work per-pixel or per-fragment. But there is another alternative that has been popular in film for decades… | 21st July 2016 | Karl Hillesland | Blogs |
~ID-003644 | Compressonator v2.3 release delivers ASTC, ETC2 codec support and GPU rendered image views | Compressonator is a set of tools to allow artists and developers to more easily create compressed texture image assets and easily visualize the quality impact of various compression technologies. | 27th June 2016 | Rosanna Ashworth-Jones | Blogs,Product blogs |
~ID-003532 | The Art of AMDGCN Assembly: How to Bend the Machine to Your Will | This article explains how to produce Hsaco from assembly code and also takes a closer look at some new features of the GCN architecture. | 29th June 2016 | Ben Sander | Blogs,Guest blogs |
~ID-003258 | AMD DOPPEngine – Post Processing on Your Desktop in Practice | DOPPEngine changes the output of your desktop in ways that can be very useful with various effects. | 23rd May 2016 | Bruno Stefanizzi | Blogs,Product blogs |
~ID-002972 | GeometryFX 1.2 – Cluster Culling | With cluster culling, GeometryFX is able to reject large chunks of the geometry – with corresponding performance increases. | 18th May 2016 | Matthäus Chajdas | Blogs,Product blogs |
~ID-002904 | Fast Compaction with mbcnt | With shader extensions, we provide access to a much better tool to get compaction done: GCN provides a special op-code for compaction within a wavefront. | 20th May 2016 | Matthäus Chajdas | Blogs |
~ID-002901 | GCN Shader Extensions for Direct3D® and Vulkan® | One of the mandates of GPUOpen is to give developers better access to the hardware, and this post details extensions for Vulkan and Direct3D12 that expose additional GCN features to developers. | 24th May 2016 | Matthäus Chajdas | Blogs |
~ID-002814 | Using Vulkan® Device Memory | This post serves as a guide on how to best use the various Memory Heaps & Memory Types exposed in Vulkan on AMD drivers, starting with some high-level tips. | 21st July 2016 | Timothy Lottes | Blogs |
~ID-002779 | Unlock the Rasterizer with Out-of-Order Rasterization | GCN hardware supports a special out-of-order rasterization mode which relaxes the ordering guarantee, and allows fragments to be produced out-of-order. | 17th May 2016 | Matthäus Chajdas | Blogs |
~ID-002565 | VDR Follow Up – Grain and Fine Details | This post is going to look at very subtle changes to improve grain and fine details using the same 3-bit/channel quantization case from the prior post. | 13th April 2016 | Timothy Lottes | Blogs,Product blogs |
~ID-002516 | VDR Follow Up – Fine Art of Film Grain | Expanding on Advanced Techniques and Optimization of VDR Color Pipelines: Details on the generation of film grain ideal for transfer functions like sRGB. | 4th April 2016 | Timothy Lottes | Blogs,Product blogs |
~ID-002362 | Using the Vulkan® Validation Layers | Vulkan validation layers make it easier to catch any mistakes, provide useful information beyond basic errors and minimize portability issues. | 9th March 2016 | Daniel Rakos | Blogs |
~ID-002168 | Using AMD Crossfire API | Alternate Frame Rendering (AFR) is the method used to take advantage of Multiple GPUs in DirectX® 11 and OpenGL® applications. | 5th May 2016 | Anas Lasram | Blogs,Product blogs |
~ID-002113 | Vulkan® Renderpasses | Renderpasses are objects designed to allow an application to communicate the high-level structure of a frame to the driver. | 16th February 2016 | Graham Sellers | Blogs |
~ID-002077 | AMD GPU Services, An Introduction | Useful information about features within our AMD GPU Services (AGS) library. | 28th April 2016 | Gareth Thomas | Blogs,Product blogs |
~ID-001861 | Understanding Memory Coalescing on GCN | An explanation of how GCN hardware coalesces memory operations to minimize traffic throughout the memory hierarchy. | 21st March 2016 | Timothy Lottes | Blogs |
~ID-001211 | Maxing Out GPU usage in nBodyGravity | Asynchronous compute can help you to get the maximum GPU usage. I’ll be explaining the details based on the nBodyGravity sample from Microsoft. | 26th January 2016 | Matthäus Chajdas | Blogs |
~ID-001014 | Fetching From Cubes and Octahedrons | For GPU-side dynamically generated data structures which need 3D spherical mappings, two of the most useful mappings are cubemaps and octahedral maps. This post explores the overhead of both mappings. | 4th February 2016 | Timothy Lottes | Blogs |
~ID-000237 | Getting the Most Out of Delta Color Compression | DCC is a domain-specific compression that tries to take advantage of data coherence. It’s lossless, and adapted for 3D rendering. The key idea is to process whole blocks instead of individual pixels. | 14th March 2016 | Chris Brennan | Blogs |
~ID-000140 | Optimized Reversible Tonemapper for Resolve | Optimized tonemapper form of the technique Brian Karis talks about on Graphics Rants: Tone mapping. Replace the luma computation with max3(red,green,blue). | 26th January 2016 | Timothy Lottes | Blogs |