# Desktop Window Manager High GPU: Causes and Fixes

Desktop Window Manager (`dwm.exe`) uses GPU, CPU and memory because it draws every window you see into one desktop image, so its load rises and falls with what is on screen: refresh rate, the number of displays, HDR, visual effects and, most of all, apps that redraw constantly. High DWM GPU usage is usually a symptom of another app or a display setting, not a fault in DWM itself, and the fix is to find which one is feeding it.

You cannot turn DWM off, and ending it in Task Manager does not help. The useful work is measuring it against your setup, changing one thing at a time, and keeping the graphics driver current.

## What Desktop Window Manager does

Microsoft's [Desktop Window Manager overview](https://learn.microsoft.com/en-us/windows/win32/dwm/dwm-overview) describes the model: windows no longer draw directly to the screen. Each app draws into an off-screen surface in video memory, and DWM composes those surfaces into the desktop image that reaches the display. Microsoft lists visual effects, window frames, window transition animations and high-resolution support among what composition enables.

This is why DWM is permanent. The [DwmEnableComposition reference](https://learn.microsoft.com/en-us/windows/win32/api/dwmapi/nf-dwmapi-dwmenablecomposition) says the function has been deprecated since Windows 8 and that DWM can no longer be programmatically disabled; a call asking it to disable composition has no effect. On Windows 10 and Windows 11 there is no supported desktop without it.

Ending `dwm.exe` from Task Manager does not remove the apps and settings that caused the load, so the same numbers come back. A usage figure that looks like DWM's own appetite is really the cost of composing what everything else is drawing.

## Why GPU, CPU and memory go up

Composition costs more when there are more pixels, more frames or more surfaces to combine. The common causes:

- **High refresh rate.** At 144 Hz DWM composes up to 144 frames a second instead of 60. Anything that changes on screen during that time has to be recomposed at that rate.
- **Several displays, or mixed scaling.** Each display is its own output, and a laptop panel at 150% scaling next to an external monitor at 100% means windows are scaled as they cross. A high-resolution external monitor adds a large number of pixels to every frame.
- **HDR.** Microsoft's [HDR settings page](https://support.microsoft.com/en-us/windows/hardware/display-graphics/hdr-settings-in-windows) says playing HDR content on battery can reduce battery life, which is why laptops turn HDR off automatically when unplugged. On a desktop it stays on, and it is one more variable worth testing.
- **Transparency and animation effects.** Acrylic blur behind Start, the taskbar and some windows has to be recomputed when what is behind it changes.
- **Apps that redraw constantly.** A browser playing video, a game in a borderless or windowed mode, a screen recorder or streaming tool, a game or chat overlay, an animated wallpaper, or a hardware monitor that updates every frame all hand DWM new content continuously. This is the most common cause, and it is why DWM often looks busy while you are "doing nothing" with a video paused in a background tab or an overlay still running.
- **Graphics drivers.** DWM's work runs through the GPU driver, so a driver bug shows up under DWM's name. Intel documented one case in a support article: [dwm.exe memory growth on 6th to 10th Generation Intel processors](https://www.intel.com/content/www/us/en/support/articles/000058381/graphics.html) with Windows 10 drivers 27.20.100.8587 or newer, starting around 30 MB and accumulating until the system could crash. Intel's resolution is the Windows DCH driver 30.0.101.1191 or newer, after a clean driver installation if Windows Update had installed a different one. If you have an older Intel driver and DWM memory only ever grows, check this first.

Memory for DWM includes the surfaces it composes. More windows, larger displays and higher scaling mean more surfaces, so a multi-monitor setup uses noticeably more than a single laptop panel. Steady growth over hours with the same windows open is not.

## Measure it in Task Manager first

Press `Ctrl + Shift + Esc`. On the Processes tab, find Desktop Window Manager. If the GPU column is missing, right-click any column header and turn on GPU and GPU engine.

Read those two columns together. Microsoft's [Task Manager GPU article](https://devblogs.microsoft.com/directx/gpus-in-the-task-manager/) explains that a process's GPU figure is the utilization of its busiest engine across all GPUs, and the GPU engine column tells you which GPU and engine that is, such as `GPU 0 - 3D`. Two processes can both show high numbers while using different engines, so a video app on the Video Decode engine and DWM on 3D are not competing for the same thing.

On the Performance tab, select each GPU in the left panel to see its engines and its dedicated and shared memory over time. On the Details tab, right-click the header, choose Select columns and add GPU utilization or dedicated and shared GPU memory for `dwm.exe`. The same article warns that shared memory can be counted under more than one process, so per-process totals can add up to more than the GPU really uses. GPU columns need a driver on WDDM 2.0 or newer.

Note three things before changing anything: which engine DWM is using, whether the number follows something you are doing, and whether memory is stable or climbing.

## Isolate the cause one change at a time

Change one thing, watch DWM for a minute, then undo it if nothing moved.

1. **Close apps one at a time.** Start with whatever animates: video in a browser, a game, recording or streaming software, overlays from game launchers, chat and GPU utilities, animated wallpapers. Minimizing is not always enough, since some apps keep presenting frames in the background. If DWM drops when one app closes, that app is the cause, and its own settings (hardware acceleration, frame limiter, overlay toggle) are where to look.
2. **Disconnect a display.** If DWM settles with one monitor unplugged, the extra resolution, refresh rate or mixed scaling is the load. Reconnect it afterwards; this is a test, not a fix.
3. **Lower the refresh rate.** Microsoft's [refresh rate guide](https://support.microsoft.com/en-us/windows/change-your-display-refresh-rate-in-windows-c8ea729e-0678-015c-c415-f806f04aae5a) uses Settings › System › Display › Advanced display › Choose a refresh rate. A rate marked with an asterisk changes your resolution too. On displays that support it, the same page has Dynamic refresh rate, which raises the rate only when needed; Microsoft notes a lower rate saves battery. Switch back to compare.
4. **Turn off transparency and animation.** Microsoft's [visual effects steps](https://support.microsoft.com/en-us/accessibility/windows/make-it-easier-to-focus-on-tasks) go to Settings › Accessibility › Visual effects, where you can turn off Transparency effects and Animation effects. Surfaces become solid and windows stop animating. Both switches turn back on the same way.
5. **Turn HDR off for a test.** In Settings › System › Display, select the HDR display at the top if you have more than one, turn off HDR and compare.

## Graphics settings worth checking

Windows has two graphics options that change how frames reach DWM. Both live in Settings › System › Display › Graphics.

**Optimizations for windowed games.** Microsoft's [windowed games page](https://support.microsoft.com/en-us/windows/optimizations-for-windowed-games-in-windows-11-3f006843-2c7e-4ed0-9a5e-f9389e535952) says this switch, under Default settings, moves compatible DirectX 10 and DirectX 11 games in windowed and borderless windowed mode from the older blt presentation model to the flip model, reducing frame latency. If DWM is busy while such a game runs, try turning it on and restarting the game. Switching the game to exclusive fullscreen, where it offers one, is another comparison.

**Hardware-accelerated GPU scheduling.** Microsoft's [DirectX team explains](https://devblogs.microsoft.com/directx/hardware-accelerated-gpu-scheduling/) that this moves much of the GPU's scheduling work from Windows to the GPU itself, and that the option appears in the Graphics settings only when both the GPU and its WDDM 2.7 or newer driver support it. It does not reduce what DWM composes, so treat it as an A/B test: switch it, restart when Windows asks, repeat the same work and keep whichever state behaves better on your hardware.

## Update or roll back the graphics driver

Microsoft's [driver guide](https://support.microsoft.com/en-us/windows/update-drivers-through-device-manager-in-windows-ec62f46c-ff14-c91d-eead-d7126dc1f7b6) recommends Windows Update first, and if you download a driver, only from the manufacturer's official site. For graphics that means your PC maker's support page (laptops often use customized drivers) or Intel, AMD or NVIDIA directly. In Device Manager, expand Display adapters to see which GPUs you have.

If DWM problems started right after a driver update, roll it back: in Device Manager right-click the display adapter, choose Properties, open the Driver tab and select Roll Back Driver, then restart if asked.

When the screen stutters, goes black or freezes but Windows still responds, press `Win + Ctrl + Shift + B`. Microsoft's [keyboard shortcuts list](https://support.microsoft.com/en-us/windows/keyboard-shortcuts-in-windows-dcc61a57-8ff0-cffe-9796-cb9706c75eec) describes it as waking the device when the screen is blank or black. It is for a stuck display, not a fix for a driver that keeps leaking.

## What not to do

- **Do not end `dwm.exe`.** It is the part of Windows that draws the desktop, and the cause of its load is somewhere else.
- **Do not try to disable DWM** through Services, the registry, "debloat" scripts or tools that claim to turn composition off. Since Windows 8 it cannot be disabled; such tweaks at best do nothing and at worst leave the desktop in a state that is hard to recover.
- **Do not rename or replace system files** such as `dwm.exe` or `dwmcore.dll`.
- **Do not take registry tweaks for GPU priority or scheduling from forums.** Use the switches in Settings, which you can switch back.
- **Do not run a driver cleaner from an unknown site.** If a vendor asks for a clean installation, as Intel's article does, use that vendor's own instructions.

## Where Mole fits

Mole for Windows does not change display, HDR, graphics or driver settings, and it does not touch DWM. Its Status page shows CPU, memory, disk and network activity, plus a GPU tile with the busiest engine's usage over time, video memory where the driver reports it, and GPU temperature on drivers that expose one. The process list shows each app's CPU and memory, grouped by owning app; it does not have a per-process GPU column, so use Task Manager's GPU and GPU engine columns to see which process is driving the GPU. The [Status section of the help](/windows/help) covers the rest.

A pattern that helps: watch Mole's GPU tile while you close apps one by one, and the drop tells you which app was feeding DWM. If CPU is what climbs instead, see [High CPU usage on Windows](/windows/blog/windows-high-cpu-usage); for memory, see [High memory usage on Windows](/windows/blog/windows-high-memory-usage); and if the laptop also runs hot, see [Windows laptop overheating](/windows/blog/windows-laptop-overheating).

## FAQ

### Is dwm.exe a virus?

The genuine Desktop Window Manager is part of Windows and composes every window you see. High usage from it reflects what other apps are drawing, not malware.

### Can I disable Desktop Window Manager?

No. Since Windows 8, DWM composition cannot be turned off, and ending the process only makes Windows start it again. Reduce its load by finding the app or display setting that keeps it busy.

### Why is Desktop Window Manager using high GPU when nothing is open?

Something is usually still drawing: a paused video tab, an overlay, an animated wallpaper or a monitoring widget. A high refresh rate or several displays raise the baseline. Close those one at a time and watch the GPU column.

### Why does dwm.exe memory keep growing?

Some growth with more windows and displays is normal. Memory that climbs for hours with the same windows open points to a driver problem; Intel documented one such dwm.exe leak and fixed it in driver 30.0.101.1191.


Canonical: https://mole.fit/windows/blog/desktop-window-manager-high-gpu
