François Guthmann

114 Followers
162 Following
30 Posts
Your friendly neighborhood Guthmann | Computer graphics enthusiast | GPU Dev Tech at AMD. Opinions are my own.
http://frguthmann.github.io
Hey all, the Graphics Programming Conference is approaching. This is my first conference and I'm looking forward to meeting fellow graphics people in person. If you're coming and would like to meet, ping me! Even if we don't know each other :)
Moving on from Indie game developers to hardware vendors -- the next talk is "Occupancy explained through the AMD RDNA™ architecture" by François. Occupancy is a key ingredient to efficient latency hiding on GPUs, and François will cover how the hardware works, as well as explain how to measure and optimize occupancy. If you like low-level technical details, this is the talk just for you!
If you're interested in the hack itself, please read the following companion blog post :) https://frguthmann.github.io/posts/shimming_d3d12/
Shimming d3d12.dll for fun and profit

Why would anyone do this? I have been playing around with WebGPU recently, writing a toy engine in JS and running it on Chrome. The debugging situation is great now, PIX just works and I can usually identify and fix issues quickly when they arise. However, when it comes to profiling, well the situation is not that great. For instance, AMD’s Radeon Developer Panel will detect Chrome as a DX12 app (when using the proper flags), it will attach to the process and even let me start a capture.

The GutHub
WebGPU friends, I have good news! I have found a way (a hack really) to do GPU profiling while running WebGPU workloads with Chrome on Windows!
I have described the process in the following blog post, it works with at least AMD and Nvidia tools!
https://frguthmann.github.io/posts/profiling_webgpu/
GPU profiling for WebGPU workloads on Windows with Chrome

Fast Forward If you’ve read the article already and/or want to jump straight to profiling, go to the TL;DR section. Context WebGPU is not a native graphics API, as in no hardware vendor provides specific drivers for their GPUs targeting this API. Instead, WebGPU runtimes like web browsers must implement backends for WebGPU using modern native APIs such as DirectX12, Vulkan or Metal. Those APIs are widely used, in particular for video games, and hardware vendors have developed great profiling tools for them.

The GutHub

Pleased to announce many more speakers for our conference here in Europe later this year: https://www.graphicsprogrammingconference.nl/

If you haven't read the whole list, go now, as I'm super happy that we'll have a Ghost of Tsushima post mortem (and many other great talks)!

If you have a talk idea, please do sign up now as the deadline is approaching fast! We need your talk to make this a success and show that Europe can do graphics!

Graphics Programming Conference

The Graphics Programming Conference is a conference for graphics programmers, from student to industry veteran, taking place in November in Europe.

Put up a page about attaching PIX to Chrome for WebGPU debugging/profiling. Working on similar ones for other major graphics debuggers too.

https://toji.dev/webgpu-profiling/pix

Profiling WebGPU with PIX

Brandon Jones - Graphics and XR on the web

Toji.dev

After 1.5 years at AMD, here is finally my first blog post on GPUOpen 🥳. Let's demystify occupancy together !

Please feel free to reach out if you have questions or comments :)

https://gpuopen.com/learn/occupancy-explained/

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.

AMD GPUOpen

Here’s another one for your holiday #gamedev reading list 🎁

Have you ever wondered what ‘occupancy’ means? Or how to identify occupancy-limited workloads?

Our new post gives an overview of #occupancy, how to measure it with tools, and ways to improve it.

https://gpuopen.com/learn/occupancy-explained/?utm_source=mastodon&utm_medium=social&utm_campaign=occupancy

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.

AMD GPUOpen

🎵 On the first day of Gamesmas, my #gamedevs sent to me ...

... the first release of #AMD #FSR3! 🎵

🎁 With a bonus gift of a #UE5 plugin 🎁

https://gpuopen.com/fsr3-source-available/?utm_source=mastodon&utm_medium=social&utm_campaign=fsr3

With a seasonal frame of mind, in one fluid motion we’ve generated the AMD FSR 3 GitHub source code repo for gamedevs everywhere!

We are very excited to announce the release of AMD FidelityFX Super Resolution 3 (FSR 3) technology on GPUOpen, complete with full source code for DirectX 12 and Unreal Engine 5.

AMD GPUOpen

Looking for tips on working with RGD? Take a look at our Getting Started tutorial? 📕

It shows you how to capture a #GPU crash dump and interpret the analysis file.

Feel free to share feedback here or GitHub for this highly-anticipated release!

https://gpuopen.com/learn/rgd_1_0_tutorial/?utm_source=mastodon&utm_medium=social&utm_campaign=rgd

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.

AMD GPUOpen