D3D12

Overview

The D3D12 driver is a Gallium driver that emits API calls for Microsoft’s D3D12 API instead of targeting a specific GPU architecture. This can be used to get full desktop OpenGL 3.3 support on devices that only support D3D12.

Debugging

There’s a few tools that are useful for debugging D3D12, such as these environment variables:

D3D12_DEBUG

Accepts the following comma-separated list of flags:

verbose

Enable verbose output to stdout

blit

Trace blit and copy resource calls

experimental

Enable experimental shader models feature

dxil

Dump DXIL during program compile

disass

Dump disassambly of created DXIL shader

res

Debug resources

debuglayer

Enable debug layer

gpuvalidator

Enable GPU validator

DXIL_DEBUG

Accepts the following comma-separated list of flags:

verbose

Enable verbose output to stdout

dump_blob

Write shader blobs

trace

Trace instruction conversion

dump_module

dump module tree to stderr

Utilities

Environment variables that control the behavior of the D3D12 driver.

MESA_D3D12_DEFAULT_ADAPTER_NAME

Specifies a substring to search for when choosing a default adapter to run on. The first adapter matching the substring is chosen. The substring is not case sensitive.