Recently I upgraded my home workstation’s RAM from 16GB to 32GB. So, when would you know your workhorse is memory-bound? and how to know it’s in need to expand the memory size? Those are good questions and this inevitably leads to a need of proper interpretation of Windows Task Manager’s Memory section.
Often times we would pay attention to the memory usage, and look at how much % of usages. But there is a lot more to it than just simply reading it’s currently consuming 15.7/32 GB (49%) of the RAM.
Task Manager in Windows 10 is offering an insight into how Windows manages the memory and this would tell us whether we are memory-bound or not.
- In use — the total amount of RAM in use at this moment, pretty easy to understand.
- Available — this should be also easy to understand the total amount of RAM available. This should match with your computer spec minutes the in-use memory. In this case, we have upgraded to 32GB – 15.6GB that yields 16.3 GB available.
- Committed — there are two parts, Commit Charge and Commit Limit. The upper limit Commit Limit is your total memory, in our case 32GB + total page file size (8GB) = 40GB. This is a fixed number based on your physical memory as well as the custom defined page size. The smaller number, Commit Charge is what’s being considered as total virtual memory all processors require to allocate. This changes as you open and close apps, and the higher the number reaches closer to the max Commit Limit, the more memory in use should be and more page files will be used.
- Cached — the memory is that’s being passively used by the operating system.
- Paged pool — the amount of RAM can be moved to the pagefile if physical RAM starts to run out.
- Non-paged pool — the opposite of paged pool, the amount of RAM can’t be dump into pagefile.
Memory compression is new in Windows 10, but other OS has this feature for some time. The idea is simple, instead of dumping data onto the slow hard drive (pagefile) we compress the data (just like zipping a file) so it takes less space and we can still hold that in memory. This way it never touches the disk, hence accessing the data, in theory, would be faster. The trade-off would be at expense of an additional CPU cycle.
Why memory is compressed when there are available spaces?
Windows choose to compress certain memory instead of consuming it but since the amount is relatively small it shouldn’t be concerning.
In summary, the amount of memory you provide to the system depends on how much processor you are running on your daily basis. The fact we are observing roughly 50% of usage doesn’t mean the other remaining 50% available RAM not being used is wasted. It’s exactly the opposite, by upgrading the RAM we are able to tell from the number that the machine right now is no longer memory-bound, but it sure was memory-bound before the upgrade. Consider it cannot hold all 16GB of memory, including compressed in memory without dumping out. The fact Cached size has exceed 16GB means the upgrade was a success.