Driver 522.25+: Flickering issue when using D3D12 HLSL dynamic resources in pixel shader

As of driver version 522.25, I am seeing a new problem with a program that uses Shader Model 6.6 HLSL dynamic resources with D3D12. There are flickering artifacts when copying from an intermediate resource. It seems like it’s behaving as if there’s a missing resource barrier. I’ve attached a minimal reproduction both as a release binary and as a complete Visual Studio 2019 project. There are more details in the included project readme.

Graphics Hardware Tested

  • RTX 3070
  • RTX 3080 10GB
  • RTX 3080 Ti

Driver Versions Confirmed Showing Problem

  • 522.25
  • 526.47
  • 526.86

Driver Versions Confirmed NOT Showing Problem

  • 517.48

Steps to reproduce:

  1. Install driver 522.25 or higher
  2. Unzip hlsl-dynamic-resource-bug-bin.zip and run Project.exe
  3. Wait a moment and observe flickering triangle. The expected output is a solid triangle with no flickering.

To use the source project, unzip hlsl-dynamic-resource-bug-source.zip. There is a readme included with instructions and more information about the code. Within the project, it’s possible to do an A/B comparison of using a descriptor table vs HLSL dynamic resources, where the former does not present any issue. I believe the behavior should be identical, as was the case with driver version 517.48 (and presumably earlier).

NVIDIA System Information 11-12-2022 11-28-18.txt (3.6 KB)

hlsl-dynamic-resource-bug-bin.zip (13.4 MB)

hlsl-dynamic-resource-bug-source.zip (8.9 MB)

1 Like

To update, this is still occurring on driver 527.37 on the same hardware. Also, as another data point, it does not occur on a Steam Deck running Windows 10 using the latest AMD APU driver (Nov 8th).