xref: /aosp_15_r20/external/mesa3d/docs/drivers/d3d12.rst (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1D3D12
2=====
3
4Overview
5--------
6
7The D3D12 driver is a Gallium driver that emits API calls for Microsoft's
8:abbr:`D3D12 (Direct3D 12)` API instead of targeting a specific GPU
9architecture. This can be used to get full desktop OpenGL 3.3 support on
10devices that only support D3D12.
11
12Debugging
13---------
14
15There's a few tools that are useful for debugging D3D12, such as these
16environment variables:
17
18.. envvar:: D3D12_DEBUG
19
20   Accepts the following comma-separated list of flags:
21
22   ``verbose``
23      Enable verbose output to stdout
24   ``blit``
25      Trace blit and copy resource calls
26   ``experimental``
27      Enable experimental shader models feature
28   ``dxil``
29      Dump DXIL during program compile
30   ``disass``
31      Dump disassambly of created DXIL shader
32   ``res``
33      Debug resources
34   ``debuglayer``
35      Enable `debug layer`_
36   ``gpuvalidator``
37      Enable `GPU validator`_
38
39.. envvar:: DXIL_DEBUG
40
41   Accepts the following comma-separated list of flags:
42
43   ``verbose``
44      Enable verbose output to stdout
45   ``dump_blob``
46      Write shader blobs
47   ``trace``
48      Trace instruction conversion
49   ``dump_module``
50      dump module tree to stderr
51
52.. _debug layer: https://learn.microsoft.com/en-us/windows/win32/direct3d12/understanding-the-d3d12-debug-layer
53.. _GPU validator: https://learn.microsoft.com/en-us/windows/win32/direct3d12/using-d3d12-debug-layer-gpu-based-validation
54
55Utilities
56---------
57
58Environment variables that control the behavior of the D3D12 driver.
59
60.. envvar:: MESA_D3D12_DEFAULT_ADAPTER_NAME
61
62   Specifies a substring to search for when choosing a default adapter to
63   run on. The first adapter matching the substring is chosen. The substring
64   is not case sensitive.
65
66