Fix guides

Vmmem using too much memory

Vmmem is the virtual machine behind WSL 2 and Docker Desktop. It's not a virus, and you can free its memory in seconds.

Published October 13, 2026. Steps are for Windows 11 and 10.

What Vmmem is

Vmmem (called VmmemWSL on newer versions of Windows) is how Task Manager shows the memory and CPU used by a virtual machine. On most PCs that machine runs WSL 2, the Windows Subsystem for Linux. Docker Desktop runs on WSL 2 too, so starting Docker starts Vmmem.

It uses so much memory because Linux treats spare RAM as file cache, and WSL 2 gives that memory back to Windows slowly. By default WSL 2 can use up to half of your PC's RAM, and it holds on to it after builds or containers have finished.

Is it safe to end?

Don't end it from Task Manager; Windows usually refuses anyway. Shut WSL down properly instead (below). That stops every Linux distro and Docker container, so save your work in them first.

Free the memory now

Open PowerShell or Command Prompt and run:

wsl --shutdown

Vmmem disappears within a few seconds. WSL starts again next time you open a Linux terminal. If you use Docker Desktop, quit it from its icon in the taskbar first.

Cap how much memory WSL can use

Create or edit the file %UserProfile%\.wslconfig (for example C:\Users\you\.wslconfig) and add:

[wsl2]
memory=6GB

Pick a number that leaves room for Windows: 4 to 6 GB on a 16 GB PC, 8 to 12 GB on a 32 GB PC. Then run wsl --shutdown so the setting takes effect. Docker Desktop with the WSL 2 backend follows the same limit.

Recent versions of WSL can also hand unused memory back to Windows on their own. Run wsl --update, then add this to the same file:

[experimental]
autoMemoryReclaim=gradual
See it live on your PCKnow My PC labels Vmmem as the WSL or Docker virtual machine, shows how much memory it's holding, and lists your WSL distros and Docker containers next to it.
Try it free for 14 days