SEARCH

How-To Geek

HTG Explains: Why It’s Good That Your Computer’s RAM Is Full

ram-sticks

Is Windows, Linux, Android, or another operating system using a lot of RAM? Don’t panic! Modern operating systems use RAM as a file cache to speed things up. Assuming your computer is performing well, there’s nothing to worry about.

While it may seem counterintuitive to those of us who remember our computers always being starved for RAM, high RAM usage means your RAM is being put to good use. Empty RAM is wasted RAM.

Bad High Memory Usage vs. Good High Memory Usage

First of all, high memory usage isn’t always a good thing. If your computer seems very slow, then high random access memory (RAM) usage is not a good thing. If your RAM is full, your computer is slow, and its hard drive light is constantly blinking, your computer is swapping to disk. This is a sign that your computer is using your hard disk, which is much slower to access, as an “overflow” for your memory.

If this is occurring, it’s a clear side that your computer needs more RAM – or that you need to use less memory-hungry programs. This is definitely a bad thing.

However, there’s a clear difference between this case, where your computer isn’t performing well, and the more common case where your computer seems to be performing just fine, but there’s an alarming amount of RAM being used with few programs open.

image

Disk Caching

Install Windows XP on a computer and you’ll probably see it using several hundred megabytes of memory when the system is idle. Install Windows 7 on that same computer and you’ll likely see Windows 7 using several gigabytes of memory in the same situation.

So what’s going on? Is Windows XP just a lighter, faster operating system? Are modern operating systems bloated and wasteful with memory? Not quite.

RAM is more plentiful than it was when Windows XP was the shiny new operating system, and modern operating systems take advantage of it. Modern operating systems use your computer’s RAM as a cache for frequently accessed files and program data.

In Windows, this feature is known as SuperFetch, which was introduced in Windows Vista. SuperFetch watches the applications you use and loads commonly-used application files and libraries into your computer’s RAM before you need them. When you launch an application, Windows loads the application’s files from your RAM instead of reading them from disk, which is a slow process. This speeds up application launching and generally makes your computer faster and more responsive.

This doesn’t just apply to Windows. Linux users will also notice that their computer is using a seemingly alarming amount of memory for caching files from your disk, and new Linux users may be concerned when they notice this. Many resource-usage-monitoring programs, such as  GNOME System Monitor, hide the memory used by the cache from the user so that users won’t have to understand this or be concerned.

image

Browsers and Other Software

The same applies for browsers and other software applications with their own caches. For example, if you notice a web browser like Mozilla Firefox using a large amount of RAM, that’s not necessarily a bad thing. If you have a lot of RAM in your computer, it’s good that Firefox is using it. By caching web pages you’ve visited in your RAM, Firefox can speed up web page load times, making using the Back and Forward buttons much faster. For this reason, Firefox automatically determines the ideal cache size based on the amount of RAM in your computer.

Firefox itself may have historically had memory leaks and other problems, but the concept is the same. It doesn’t make sense for Mozilla to get Firefox’s RAM usage down to the 50 megabytes because modern computers have a lot of RAM Firefox can use to speed up web browsing.

The same applies for other software. Programs with high memory usage may be making good use of your RAM, not wasting it.

image

Why Empty RAM is Useless

You may be thinking that using RAM as a cache is great, but you don’t want these program files and other data taking up your RAM. You’d rather have empty RAM available so that programs will launch instantly and the memory will be used for what you think is best, not what your operating system and programs think is best.

However, this isn’t a concern at all. Whether your RAM is full of cached files or completely empty, it’s all available for programs that really need it. Cached data in your RAM is marked as low-priority, and it’s instantly discarded as soon as the memory is needed for something else.

Because this data can be instantly discarded when necessary, there’s no disadvantage to using the RAM for cache. (The one potential disadvantage is users who don’t understand what’s going on becoming confused.)

Empty RAM is useless. It’s not any faster for the computer to write data to empty RAM, nor does empty RAM use less power. In fact, assuming you’re launching a program that may already be present in your RAM’s file cache, programs will load much faster when your RAM is used rather than when it’s empty.


This is why using a task killer on Android is a bad idea, and it’s also why you shouldn’t be too concerned if your computer is filling up your RAM. It’s also one of the reasons why Windows XP isn’t the ideal operating system for today’s hardware – while XP’s RAM usage may be much lower than Windows 7’s, that’s not necessarily a good thing if you have a modern computer with a decent amount of RAM.

Chris Hoffman is a technology writer and all-around computer geek. He's as at home using the Linux terminal as he is digging into the Windows registry. Connect with him on Google+.

  • Published 11/5/12

Comments (30)

  1. mitcoes

    For Linux users, some packages has momory leaks and the RAM cache does not flush and sometimes this ram cache slows your system but there are a script from elatareao named FREECACHE that flush cache when the total RAM is almost full.

    It is a script that is only needed under special circumstances, when you notice that sometimes your system get slow using some packages.

  2. Srini

    Is the above concept applicable in a Mac OS X environment (Mountain Lion)?

    For e.g., I have upgraded my RAM from 4GB to 16GB. Do you think Mac OS X would take similar advantage? I still see 12 GB free on my RAM….which indicates that the original 4GB only is being used. So, I really am not sure. Any info in this regard would be appreciated.

  3. Rudy

    It really a very interesting article, which allow us to better understand the process, so this way get better diagnostic when checking for problem.
    Thanks a lot!!

  4. Bill Condie

    Interesting, thanks.

    I won’t be using the Memory Clean app on Mountain Lion so often from now on :-)

  5. Stevie Grice

    My hard drive light is constantly blinking, as you stated earlier, but you don’t provide a solution. Is it simply a case of installing more RAM?

  6. LEECAD

    I have 4GB of RAM on my laptop and I use CAD programs alot. I like to switch between a couple of them, but when I do the RAM goes from 1.80RAM normal to 3.00GB RAM. I thought this would make the computer work to hard to have more than one program up. So am I to undertand by this article that it is good for the computer to have a couple of the CAD programs open at the same time so the amount of RAM being used is close to 3GB of RAM. As opposed to just having one CAD program open at a time and the amount of RAM being about 2,25GB RAM?

  7. David Aris-Sutton

    @LEECAD
    The way i understand it is that empty RAM isn’t actually a problem but then neither is high RAM usage.
    So the PC won’t perform better by having several CAD programs running but it won’t necessarily perform worse, RAM not in use will be loaded with cache which will be dumped if the RAM is needed so while one CAD program is using half the RAM the cache may contain files for the other, allowing fast load

    Or am I just muddying the waters further

  8. David Aris-Sutton

    This comments section needs an edit button.

    I notice that in my own system that the RAM usage is never above 5GB (from a possible 24) in an attempt to get the RAM usage above this level I have 10 google chrome tabs open, thunderbird, utorrent, word, powerpoint, convertxtodvd and Dishonoured running but still the usage stays relatively constant and the system runs just fine (if a little warm).
    So why doesn’t the OS (win 7 ult 64) load programs into any of the remaining RAM?

  9. Jim

    This article is fantastic! Please keep up the good work.

  10. Scott

    @LEECAD: As long as the “Physical Memory” line in Win7 stays below about 80%, you should be OK. That’s the measure of how much RAM is being actually used by programs. The other 20% (or whatever) is then available as disk cache. For WinXP, keep an eye on “Physical Memory” and compare the “Total” to “Available”. Once you start passing about 80%, less memory is available for disk cache and disk operations will start slowing things down.

    @David: It’s likely that Win7 is valuing disk cache above keeping stuff in active RAM. I’ll have to try that stress-test at home. My kids like Minecraft – that takes up about 1.5GB every time. Hmmm.

  11. mikmik

    I imagine running virtual OSX inside of win7 would take up mondo RAM, no?
    I have 8 gig, pretty standard these days, I think, and I never see it go above 29% use. Thing is, RAM is so bloody cheap that it only costs about $5 a gig!

  12. Pete

    @David Aris-Sutton I don’t think whatever algorithm Windows uses is aggressive enough to fill all that RAM. If you run Windows Vista/7 or 8 on machines with 1,2 and 4 GB of RAM you can quite easily see Windows is using more RAM as cache as more is available. Past that less and less benefit from my experience.

  13. Ushindi

    Great article – thanks for clearing this up for the not-really-geeks.

  14. Erik

    The ‘SuperFetch’ feature of Windows is useless and defeats the purpose of enhancing performance. With my PC running Windows 7 with 8 GB. of RAM, SuperFetch would try to fill just about every last byte of memory with just about ANYTHING it could find on my system – random videos, music, app files, documents… (I confirmed this by using Performance Monitor). With SuperFetch enabled (which is the default), I literally could not use my PC for about 30 minutes after Windows was started, each and every time I booted my PC. It did so much work loading crap from the hard drives that it created a huge bottleneck while doing so. Did I notice any performance gains after it was finished? NOPE.

    I found that the best thing to do was disable the SuperFetch service and just let Windows use its regular file caching ability. Performance has been excellent since.

    I firmly believe that the earlier version of SuperFetch included with Windows Vista is one of the main reasons Vista got such a bad name. SuperFetch was refined a bit with the release of Windows 7 but it still remains a useless, cumbersome feature.

  15. Daniel

    Interesting article!

  16. RussellXPD

    Hi
    I found this useful too – one of many insights I’ve gathered from HTG to keep me informed.
    Russell

  17. Spazturtle

    @Srini, yes OS X does the same as Linux, when you close an app it stays int he ram so that if you launch it again it loads faster Linux and OS X do it a bit better then Windows as super-fetch on windows still has some problems.

  18. clamo

    LOL you do NOT want a program to stay in your memory after its closed for the simple FACT that IF you plan on loading another program up that consumes lots of ram to run correctly, you want the most free so it don’t crash.

    HDD, motherboard and CPU SPEED is what you want for faster program load times. *also a good hdd cable is recommended*

    @Pete: when using ssd’s that don’t work that way. the cash must be disabled to retain ssd performance, but for hdd’s this don’t matter.

  19. Erik

    @clamo
    That used to be the case with 16-bit legacy systems like Win98. Nowadays with 64-bit capability and hugely-expanded memory capacity, it pays to cache as much as possible. However, what makes it worthwhile is WHAT is cached, not so much how much. SuperFetch fails in that regard. The normal Windows caching functionality is pretty good though.

    Using all available memory for caching is dumb though as yes, load times will be reduced for non-cached data and programs will have less to work with (which can lead to crashes but not so much in this 64-bit world).

  20. buchi

    tnx for the info

  21. Peter

    I currently have 4gig on my laptop with a spare slot, currently my PC is only using about 30%. Does this article indicate that although I have 70% available I am still better off filling that extra slot to give me 8gig. I have updated to Windows 8 but still find loading programs a little slow. It was only a cheapie laptop to begin with. How do I utilise my spare RAM?

  22. okeke chuchu

    Ohhhh.. So that’s what the regular blackberry fone does wen it starts up after 24hrs. Its writing apps to RAM. They Better fix this in os10 else..

  23. Marc

    i’m using Windows 7 64 bit, having 8 gigs of ram, and i have no problems of any kind concerning the speed in general…the os is fast, all the prgms that i open are pretty fast too, downloading a movie from the net takes only 2 minutes, no lagging of any kind anywhere, games are perfect, so i’m pretty happy about the general perfomance of my rig..
    I’ve built the hole Kit by myself so i’ve also learned how to fix it the right way so i get the best from it!
    I’m pretty glad when i see all the problems that peoples exposes on the net not to have all these issues!
    I think i did learn the right way because i don’t have theses problems.
    Best of luck for you guys .

  24. zapper067

    lol

  25. JF

    Thanks for this great article, as i use a Acer Aspire One 533 with 2GB Ram as my daily laptop. Now i can rest more in peace when RAM is full lol.

    Looking forward to read more from your knowledge(able) database!

  26. thesilentman

    Nice, another reason to tell my friends to upgrade to 7 from XP then.

  27. David

    Is there some way in Windows7 to produce a histogram of cache misses? If I’m going to persuade the procurement office to buy me a better machine, it’d be handy to have better proof than “the hard drive light is often on”.

  28. caduser

    @Erik,

    What is the procedure for disabling SuperFetch?

  29. james braselton

    hi there my macbook air has a 2.13 ghz duo core cpu 4 gb ram 256 gb ssd with like 255 mb/s read 255 mb/s write speed ssd are faster then hdd

  30. spinxwebdesign

    This is really surprising. Till this moment I thought Free RAM is very useful but after reading your post I am dazed. After reading your blog post I understood that the Cache memory is related to computer speed. If RAM requires more memory then it will automatically remove old cached files. I really appreciate the information shared by you here.

Enter Your Email Here to Get Access for Free:

Go check your email!