The Big Picture: Why Does a GPU Need a Driver?

A graphics chip from one company works very differently inside from a chip made by another company. A game cannot know the secret details of every GPU in the world. And Windows cannot either.

So every GPU comes with a display driver: a piece of software, written by the GPU maker (Intel, AMD, NVIDIA...), that translates general graphics requests into the exact commands that one specific GPU understands. You learned what drivers are in Chapter 13 — Device Drivers. A display driver is the biggest and most complex driver on most PCs.

Analogy: The driver is a translator at a meeting. The game speaks "DirectX". The GPU speaks its own private language. The translator sits in between, so both sides can work without learning each other's language.

2.1 WDDM (Windows Display Driver Model)

What it is: WDDM (Windows Display Driver Model) is the set of rules Microsoft gives to GPU makers. If a vendor writes its driver following WDDM, Windows knows how to load it, schedule work on the GPU, and share video memory between programs. WDDM first arrived with Windows Vista, and newer Windows versions use newer WDDM versions (for example, Windows 10 and 11 use WDDM 2.x and 3.x; exact numbers depend on your build).

What WDDM gives Windows:

FeatureWhat it means for you
GPU schedulingSeveral programs can share one GPU safely, each getting a turn (like CPU scheduling in Chapter 9)
Video memory managementWindows can move textures between VRAM and system RAM when VRAM runs short
Desktop compositionThe Desktop Window Manager can draw windows on the GPU (Chapter 30)
Recovery from hangsIf the GPU stops responding, Windows can reset the driver without rebooting (Section 2.3)

Because of WDDM, you can run a game, a web browser and a video call at the same time, and each can use the GPU.

2.2 The Kernel-Mode and User-Mode Driver Split

What it is: Remember that Windows runs code in two worlds: user mode (normal programs, restricted) and kernel mode (the core of Windows, full power). A crash in kernel mode can take down the whole PC (the blue screen). See Chapter 8 — Windows Architecture.

WDDM splits a display driver into two parts, so that the risky part is as small as possible:

PartShort nameRuns inMade byIts job
User-mode driverUMDUser mode, inside each app's processThe GPU vendorDoes the heavy translating: turns API calls into command buffers (lists of GPU commands)
Kernel-mode driverKMDKernel modeThe GPU vendorTalks to the real hardware: submits work, handles interrupts, sets up the display
DirectX Graphics Kerneldxgkrnl.sysKernel modeMicrosoftThe Windows part in the middle: contains the GPU scheduler and the video memory manager (often called VidMM)

(The exact internal details are more complicated and change between Windows versions. This is the simple picture.)

Why split it? Most of the driver's work (translating thousands of draw calls) can happen in user mode. If the UMD crashes, only that one program closes, not the whole PC. Only the small, essential part (the KMD) needs the dangerous kernel power.

 USER MODE                              KERNEL MODE
 ┌─────────────────────────┐
 │ Game / app              │
 │   │                     │
 │   ▼                     │
 │ Graphics API runtime    │
 │ (Direct3D, Section 3)   │
 │   │                     │
 │   ▼                     │
 │ User-mode driver (UMD)  │  command   ┌───────────────────────┐
 │ from the GPU vendor     │ ─buffers─▶ │ dxgkrnl.sys           │
 └─────────────────────────┘            │ GPU scheduler + VidMM │
                                        │   │                   │
                                        │   ▼                   │
                                        │ Kernel-mode driver    │
                                        │ (KMD, vendor)         │
                                        └──────────┬────────────┘
                                                   │
                                                   ▼
                                        ┌───────────────────────┐
                                        │ The GPU hardware      │
                                        └───────────────────────┘

Two jobs inside dxgkrnl.sys (simplified):

  • The GPU scheduler: decides which program's work the GPU runs next, so no program can hog it.
  • The video memory manager (VidMM): hands out VRAM to programs and, when VRAM is full, moves less-used data to system RAM.

2.3 Timeout Detection and Recovery (TDR)

What it is: Sometimes a GPU gets stuck: a bad shader loops forever, or a driver has a bug. Without protection, the screen would freeze and you would have to power off.

TDR (Timeout Detection and Recovery) is Windows' safety net. If the GPU does not answer for a short time (by default about 2 seconds, though this can differ), Windows resets the graphics driver and the GPU. Your screen may go black or flicker for a moment, and then the desktop returns. A message such as "Display driver stopped responding and has recovered" may appear.

What you seeWhat happened
Screen flickers black for 1 to 3 seconds, then returnsTDR reset the driver. The PC kept running
A game closes, but Windows is fineThe app's graphics device was lost in the reset
Repeated resetsA driver bug, overheating, a faulty card, or too much overclocking
Blue screen with a video-related stop codeThe reset did not succeed

Changing the TDR timeout needs registry edits (Chapter 17). It is not a good idea for a beginner: a longer timeout just hides the problem.

2.4 The Basic Display Adapter (Fallback)

What it is: If Windows cannot find a proper driver for your GPU (for example, on a fresh install, or when a driver fails to load), it uses a built-in fallback called Microsoft Basic Display Adapter.

It works with almost any GPU, but it is very limited:

Basic Display AdapterReal vendor driver
Resolution choicesFew, often lowAll the monitor supports
3D speedVery slow (no GPU acceleration for games)Full speed
Video playbackMay be choppySmooth, uses the media engine
Multiple monitors, HDR, high refresh rateOften missingSupported

Sign you are on the fallback: the screen looks blurry or stretched, the resolution list is short, and Device Manager shows "Microsoft Basic Display Adapter" under Display adapters. The fix is to install the correct driver (from Windows Update or from the GPU maker's website).

2.5 Tools: How to See Your Display Driver

You can look at your driver without changing anything. The lab (page 9) walks you through each of these.

ToolHow to open itWhat it shows
Device ManagerWin + X → Device Manager → Display adaptersGPU names; right-click → Properties → Driver tab shows provider, date, version
dxdiagWin + R, type dxdiag, EnterDisplay tab: GPU name, VRAM, driver version, WDDM version
PowerShellGet-CimInstance Win32_VideoControllerName, driver version, resolution, refresh rate
Task ManagerPerformance → GPUGPU name, driver version, driver date

Example PowerShell command (read-only):

Get-CimInstance Win32_VideoController | Select-Object Name, DriverVersion, DriverDate, VideoProcessor

Tip: On a laptop you may see two adapters (for example, an Intel one and an NVIDIA or AMD one). That is the integrated and the discrete GPU from Section 1.

Summary

TopicRemember this
Display driverGPU-maker software that translates generic graphics requests into one GPU's commands
WDDMMicrosoft's driver model: GPU scheduling, video memory management, recovery
UMDUser-mode driver; builds command buffers; a crash only closes one app
KMDKernel-mode driver; talks to the hardware
dxgkrnl.sysMicrosoft's graphics kernel: GPU scheduler and video memory manager (VidMM)
TDRIf the GPU hangs for about 2 seconds, Windows resets the driver
Basic Display AdapterThe limited fallback when no real driver is installed
ToolsDevice Manager, dxdiag, Get-CimInstance Win32_VideoController, Task Manager