Occasionally, Windows will report that it is running low on, or completely out of, memory. When that happens, programs may start to misbehave, fail, or crash completely.
Of course, one of those failing programs could be Windows itself.
Recent versions of Windows have made it a little easier to determine which programs might be consuming more memory than is warranted, leading to the dreaded “out of memory”.
Become a Patron of Ask Leo! and go ad-free!
Clarification: RAM versus disk
When we talk about “memory”, we’re referring to your computer’s RAM. That’s the memory that is erased every time you turn off your computer.
That’s different than disk space, which some people erroneously refer to as “memory”. While your hard disk does remember things, even when the computer is turned off, it’s not referred to as memory.
However, when it comes to computers, life is never simple. It is possible to use disk space as a kind of “fake” memory, referred to as “virtual memory“.
While there are obscure scenarios in which running out of disk space can result in low memory conditions, here I want to focus on how Windows manages (and runs out of) RAM, not disk space.
Running Task Manager: the Processes tab
Note: this is primarily about Task Manager available in Windows 8 and later versions. For prior versions, see the section “More details and older versions” below.
Right-click on the clock in your Windows taskbar, and click on Task Manager.
This will bring up the Windows Task Manager application. If it’s not selected by default, click on the “Processes” tab on the left.
One of the columns displays “Memory”, and as you might expect, we’ll be interested in its contents.
Click on the word “Memory” in the column header. This will sort the display by memory usage.
In my example, something called “Antimalware Service Executable” is currently using the most memory in my system. What you see will naturally be different, depending on what software is currently running on your computer.
In addition, the numbers and the order can change as you watch. Task Manager updates the process display approximately once a second.
If the line item has a small caret – > – to its left, click on that for a little more information.
My “Antimalware Service Executable” turns out to be the program that runs Windows Defender.
Task Manager’s Details tab
For an alternate, sometimes slightly more informative view on the programs running on your machine, click on the Details tab.
Rather than being listed by the name of the application, this display includes all of the running programs by its executable (“.exe”) name (the file that provides the application, or, in some cases, parts of the application).
Like the previous tab, you can click on the “Memory” column header to sort by the highest amount of memory used by the program. In my case, that’s “MsMpEng.exe”, which is the “Antimalware Service Executable”, which, as we saw earlier, is Windows Defender.
This Details tab can be useful to look at in addition to the Processes tab, as it can give you more granular information about exactly what program is using memory. Together, they can give you a very clear indicator of exactly which program is at fault.
What to do when you run out of memory
Running low (or out) of memory can happen for so many different reasons it’s impossible to have a simple answer for what to do when it happens.
Using Task Manager, above, you can at least start by identifying which program is using too much RAM; it’ll most likely be the one that stands out as using the highest percentage, sorted to the top on the Processes tab.
It may be that you’re simply try to do more than you can with that program for the amount of RAM installed on your system, or virtual memory configured. You can try to increase the virtual memory size, but I’ll warn you: the more virtual memory you end up using, the slower the program, and your entire computer, are likely to become.
It may be that you have too many programs running. This is particularly evident if there’s not one program that really stands out as a memory hog. Try closing programs to see if things improve for you. (Start-up programs that you might not realize are even running are notorious for chipping away at how much memory is being used. Task Manager has a useful tab for that as well; we’ll cover that in a future article.)
If one specific program causes the problem repeatedly, it’s also very possible that it has a bug. What’s called a “memory leak” happens when a program loses track of how much memory it is using, and keeps using more and more and more as a result, even though it shouldn’t need to. Make sure you’re running the latest version of any programs you find at the top of the memory-usage list.
But the bottom line here, really, is that while we can typically identify which program might be using excessive amounts of memory, that’s simply the starting point for your research to figure out why, and what – if anything – can be done about it.
More details and older versions of Windows
In the past, I’ve also recommended using a program called Process Explorer, a free download from Microsoft, to do the research above. Recent versions of Windows’ own Task Manager have made that less necessary, as it now contains many features that were previously available only in Process Explorer.
However, Process Explorer is still a powerful, albeit geeky, tool. If you want to dive into things in a little more detail, are comfortable with or looking for even more information about your running processes, or you have Windows 7 or earlier, Process Explorer would be the tool to use. How do I find out who’s using all my memory? is an older article that covers using it.
If you found this article helpful, I'm sure you'll also love Confident Computing! My weekly email newsletter is full of articles that help you solve problems, stay safe, and give you more confidence with technology. Subscribe now and I'll see you there soon,