System slowdowns, laggy applications, and even freezes often occur when Windows 11 runs low on available RAM. Pinpointing which programs are using the most memory is crucial for resolving performance issues, especially when Task Manager and Resource Monitor don’t clearly account for all the RAM in use. Here’s a comprehensive guide to accurately check RAM usage by programs and processes in Windows 11, including advanced techniques for tracking down hidden or “unaccounted for” memory consumption.

Use RAMMap to Get a Complete Memory Usage Breakdown

RAMMap, a free utility from Microsoft Sysinternals, provides a detailed and accurate view of how Windows 11 allocates RAM. Unlike Task Manager, which often only shows private working sets for processes, RAMMap reveals memory used by drivers, the kernel, and other system components that may not be visible elsewhere.

Step 1: Download RAMMap from the official Microsoft Sysinternals site. This tool is portable and does not require installation.

Step 2: Run RAMMap.exe as an administrator to allow it to access all system memory details.

Step 3: Review the tabs in RAMMap. The "Processes" tab shows memory usage by each running process, while the "Use Counts" and "Physical Pages" tabs break down memory usage by type (such as driver-locked memory, paged pool, and non-paged pool).

Step 4: Look for unusually high values in any category. For example, if "Driver Locked" memory is much higher than expected, a device driver may be leaking memory. If a process shows extremely high usage, that program is likely responsible for the RAM drain.

Step 5: Use the information from RAMMap to decide your next steps. If a specific driver or system component is consuming excessive memory, update or reinstall related drivers. If a program is responsible, consider updating or reinstalling it.


Check Memory Usage in Task Manager’s Details Tab

While Task Manager’s Processes tab gives a general overview, it sometimes misses system processes or fails to account for shared and reserved memory. The Details tab offers a more granular perspective.

Step 1: Open Task Manager by pressing Ctrl + Shift + Esc or right-clicking the taskbar and selecting "Task Manager."

Step 2: Navigate to the "Details" tab. Right-click any column header and choose "Select columns."

Step 3: Add the "Working set (memory)" and "Commit size" columns. "Working set" shows the amount of physical memory (RAM) currently used by a process, while "Commit size" reflects the total virtual memory reserved by the process.

Step 4: Click the column header to sort processes by memory usage. This helps you quickly identify which processes are using the most RAM.

Step 5: If you see processes with unexpectedly high memory usage, research their purpose. System processes with high usage may indicate a memory leak or misbehaving driver. For third-party programs, consider updating, restarting, or removing extensions to reduce memory consumption.


Use Resource Monitor for Additional Insights

Resource Monitor provides another layer of detail, especially when you need to see how memory is allocated among processes and system components.

Step 1: Open Resource Monitor by typing resmon in the Windows search bar and pressing Enter, or by clicking "Open Resource Monitor" at the bottom of Task Manager’s Performance tab.

Step 2: Go to the "Memory" tab. Here, you can see a list of running processes and their current RAM usage, as well as graphs and tables showing how much memory is in use, modified, standby, or free.

Step 3: Use the "Commit" and "Working Set" columns to sort and identify the top memory-consuming processes. The "Physical Memory" graph helps visualize how much RAM is actually available versus in use.

Step 4: If you notice a large gap between total memory in use and the sum of all listed processes, this may indicate hidden memory usage by drivers, the kernel, or memory leaks.


Identify Memory Leaks and Hidden Usage

Sometimes, the sum of all process memory usage does not match the total RAM in use. This discrepancy can be caused by:

  • Drivers leaking memory (e.g., network, graphics, or peripheral drivers).
  • Background services or virtual machines (such as WSL, Hyper-V, or Android subsystem).
  • System cache or standby memory not being released properly.
  • Malfunctioning antivirus or security software.

To address these issues:

  • Update all device drivers, especially after noticing high memory usage or following Windows updates.
  • Check for and close any virtual machines or subsystems not in use.
  • Use RAMMap to inspect driver-locked and non-paged pool memory for signs of leaks.
  • Restart your PC regularly to clear memory leaks and system cache.
  • Monitor which apps are set to run on startup and disable non-essential ones.

In some cases, only a full system restart or driver update will resolve persistent high memory usage caused by leaks or hidden processes.


Try Advanced Tools and PowerShell for Deeper Analysis

For advanced troubleshooting, use tools like Sysinternals Process Explorer or PowerShell commands to gather more detailed memory usage data.

Step 1: Download and run Sysinternals Process Explorer as an administrator. This tool shows detailed memory statistics for every process, including private bytes, working set, and more.

Step 2: In Process Explorer, click the "View" menu, then "Select Columns," and add memory-related columns as needed. Sort by these columns to find the top memory consumers.

Step 3: For command-line users, open PowerShell and run:

Get-WmiObject WIN32_Process | Sort-Object -Property ws -Descending | Select-Object -first 25 ProcessID,Name,WS

This command lists the top 25 processes by working set (physical memory usage).

Step 4: To check overall memory usage, run:


$CompObject =  Get-WmiObject -Class WIN32_OperatingSystem
$Memory = ((($CompObject.TotalVisibleMemorySize - $CompObject.FreePhysicalMemory)*100)/ $CompObject.TotalVisibleMemorySize)
Write-Host "Memory usage in Percentage:" $Memory
    

These tools and commands help identify memory usage patterns that might not be visible in standard Task Manager views.


Tracking down which programs use the most RAM in Windows 11 often requires more than just a glance at Task Manager. By combining RAMMap, advanced Task Manager views, Resource Monitor, and specialized tools, you can accurately diagnose memory issues and improve your system’s speed and reliability.