MacBook – The free vs. inactive memory ratio on a Mac with 16 GB RAM has me concerned

macbook promemoryparallels-desktopwindows

I am looking for clarification since I am seeing large allocations of RAM on my Mac. I have 16 GB of RAM and recently installed Windows 7 on Parallels. When the machine runs, I see 3.55 GB Free memory and 8.39 GB Inactive memory. I do not want my RAM to be hogged by Windows if I only need it for a small task and am concerned about a slowly running Mac in this case.

Might the huge amount of inactive memory be due to Parallels being run recently? I am not sure if Parallels is the culprit. Moreover, Wired and Active memories show 2 and 2.13 GB, respectively. The total Used memory is 12.54 GB which means the majority (12.54 GB of 16 GB) of RAM is committed now.

This seems too much. How can I diagnose what is exactly eating up my RAM? I have a retina MacBook Pro and the 10.8 release of Mountain Lion. When I launch Parallels, the increase in memory is allocated to "Wired" yet Inactive memory is still 8GB.

Is what I am seeing explainable?

Best Answer

Free memory has nothing in it. Inactive memory caches recently used information just in case the system might use it again. This is especially beneficial for file storage.

The system only needs a tiny amount of free memory so the program asks for memory to be allocated it doesn't have to page some other active memory out to disk and cause that program to stall momentarily while the virtual memory system is doing housekeeping. The overhead for the system to release inactive memory is almost immeasurably short so worrying about a large amount of that memory is generally not worth your brainpower to even think about it.

In summary:

  • Inactive memory: this is always good, it makes the system fast.
  • Free memory: any more than 200 MB is a waste, so the system will keep adding files and/or code to inactive memory until free memory hits a low-water benchmark based on a few factors.

What you describe seems perfectly normal for a system that has been recently booted and doesn't seem to me to be anything of concern. VMware fusion or Parallels clearly has need to access a lot of files when running Windows 7 and they are likely to be the reason for your large amount of inactive memory.

If, however, you wish to diagnose what is using memory, the sysdiagnose program will run several memory allocation utilities and saves the results to a directory.