DEV Community

Izanagi
Izanagi

Posted on

Per-application GPU settings in Windows: the DXGI and WDM layer

Between your game's DirectX calls and the GPU silicon, Windows has two layers: DXGI (DirectX Graphics Infrastructure) and WDM (Windows Display Model). Understanding these layers helps you apply the right tweaks.

DXGI

DXGI manages the swap chain — the queue of rendered frames waiting to be displayed. Key settings:

MaxFrameLatency: how many frames can be queued ahead of display. Default is 3. Setting to 1 reduces render-to-display delay:

HKLM\SOFTWARE\Microsoft\DirectX
MaxFrameLatency = 1
Enter fullscreen mode Exit fullscreen mode

Flip model: DX12 and modern DX11 games use flip presentation (more efficient than legacy blit). No registry change needed — it's default when you use the right DXGI flags in code.

WDM / DWM

The Windows Display Model routes all rendering through the Desktop Window Manager compositor. Even exclusive fullscreen goes through DWM in modern Windows.

DWM settings:

; Timer interval for DWM compositing
HKCU\Software\Microsoft\Windows\DWM
MMCSSSchedulingCategory = High
Latency = 1

; Disable MPO (most impactful DWM tweak)
OverlayTestMode = 5

; Disable transparency effects
ColorPrevalence = 0
EnableAeroPeek = 0
Enter fullscreen mode Exit fullscreen mode

GPU scheduler (VRAM)

HAGS (HwSchMode=2) moves VRAM scheduling to the GPU. On NVIDIA, this generally helps. On AMD Navi, disable.

Per-process GPU settings via IFEO

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\game.exe\PerfOptions
GpuPriority = 8
Enter fullscreen mode Exit fullscreen mode

These settings work at the driver level before any DXGI/WDM involvement.

Full GPU configuration at https://terweb.lt/

Top comments (0)