none
how to reduce memory usage

    Question

  • Is there a way to reduce vista memory usage? I read somewhere that because of caching, it uses so much memory. I have 2 GB RAM and vista uses about 900 MB.

     

    How can I reduce that?

    Saturday, February 16, 2008 6:56 AM

Answers

  • It is well said but it is totaly wrong.

     

    Simple scenario:

    I have vista with 3gb RAM. Vista with nothing running just takes 1.2Gb of RAM.

    Now I start virutal PC and I can not start a mashine which needs 2Gb of RAM.

    So I need to reduce mem alocated to the VM, start it and then shut it down, because visat now frees memory.

    Now I can go back to my ram allocation of 2Gb start the VM again.

    Just too much hastle.

     

    So either vista needs to be smarted or MS Virual PC needs to improve...

    It is just easier to go back to XP and do not have that pain any more.

    It is so anoing to hear MS experts saing that Vista should just grab the resorces even if it does not realy need them...

     

    Thursday, August 14, 2008 11:44 AM
  • You have to stop thinking of system memory as a resource and start thinking of it as a a cache. Just like the level 1 and level 2 cache on your CPU, system memory is yet another type of high-speed cache that sits between your computer and the disk drive.

    "And the most important rule of cache design is that empty cache memory is wasted cache memory. Empty cache isn't doing you any good. It's expensive, high-speed memory sucking down power for zero benefit. The primary mission in the life of every cache is to populate itself as quickly as possible with the data that's most likely to be needed-- and to consistently deliver a high "hit rate" of needed data retrieved from the cache. Otherwise you're going straight to the hard drive, mister, and if you have to ask how much going to the hard drive will cost you in performance, you can't afford it."


    http://www.codinghorror.com/blog/archives/000688.html

    P.S. If you really want your RAM to be free (wasting power and not doing anything useful) you can turn off Superfetch by going to Run and typing services.msc locating Superfetch and setting it to Disabled
    Tuesday, February 19, 2008 9:20 AM

All replies

  •  

    Using Windows Classic theme can reduce lots of RAM usage
    Sunday, February 17, 2008 2:46 AM
  • I changed it to classic but because of cache policy after I run some applications, it reaches to 900MB or even 1 GB.

     

    Is there any way to disable caching?

    Sunday, February 17, 2008 6:37 AM
  • You have to stop thinking of system memory as a resource and start thinking of it as a a cache. Just like the level 1 and level 2 cache on your CPU, system memory is yet another type of high-speed cache that sits between your computer and the disk drive.

    "And the most important rule of cache design is that empty cache memory is wasted cache memory. Empty cache isn't doing you any good. It's expensive, high-speed memory sucking down power for zero benefit. The primary mission in the life of every cache is to populate itself as quickly as possible with the data that's most likely to be needed-- and to consistently deliver a high "hit rate" of needed data retrieved from the cache. Otherwise you're going straight to the hard drive, mister, and if you have to ask how much going to the hard drive will cost you in performance, you can't afford it."


    http://www.codinghorror.com/blog/archives/000688.html

    P.S. If you really want your RAM to be free (wasting power and not doing anything useful) you can turn off Superfetch by going to Run and typing services.msc locating Superfetch and setting it to Disabled
    Tuesday, February 19, 2008 9:20 AM
  • I'm perfectly fine letting SuperFetch have its way with my system memory. The question shouldn't be "Why does Vista use all my memory?", but "Why the heck did previous versions of Windows use my memory so ineffectively?" I don't know. Maybe the rules were different before 2 gigabytes was a mainstream memory configuration.

    http://www.codinghorror.com/blog/archives/000688.html
    Friday, February 22, 2008 9:17 PM
  •  TheBigBadViolist wrote:

    You have to stop thinking of system memory as a resource and start thinking of it as a a cache. Just like the level 1 and level 2 cache on your CPU, system memory is yet another type of high-speed cache that sits between your computer and the disk drive.

    "And the most important rule of cache design is that empty cache memory is wasted cache memory. Empty cache isn't doing you any good. It's expensive, high-speed memory sucking down power for zero benefit. The primary mission in the life of every cache is to populate itself as quickly as possible with the data that's most likely to be needed-- and to consistently deliver a high "hit rate" of needed data retrieved from the cache. Otherwise you're going straight to the hard drive, mister, and if you have to ask how much going to the hard drive will cost you in performance, you can't afford it."


    http://www.codinghorror.com/blog/archives/000688.html

    P.S. If you really want your RAM to be free (wasting power and not doing anything useful) you can turn off Superfetch by going to Run and typing services.msc locating Superfetch and setting it to Disabled


    Thank you very much for the latest part of your reply! Finally I can run some of my applications that were constantly saying that there is not enough physical memory to run the program. I can understand that this could be bad coding from the developers side, and I don't care either. Instead of turning it off, is there a way to change the amount of RAM vista uses for caching?
    Friday, February 29, 2008 8:45 PM
  • Well, it shouldn't cause a problem like that, the only program that gives me trouble is Valve's "Steam" game downloading/launching program and sometimes it will not launch because it says there is not enough memory, however this is only when I click directly on Half-life two. If I lauch Steam first it starts up fine. This is because the program is reading how much memory is "Free" and Vista does its best to cache every MB it can. I have 2GB and about 1200MB is cached (it will show up as not used in the task manager because it will be freed as needed, but you can see Free and Cached if you look below the graph). Also your memory problems could be related to DEP, if you are having memory problems with a specific program then disable DEP for that program. To do this do Computer>System Properties>Advanced System Settings>Advanced>Under performance "Settings">Data Execution Prevention. Add the programs that are having memory errors to the list. Also there is a registry hack that lets you prefetch boot-up data only but this might not help your performance at all. Also if you have a flash drive laying around try readyboost. It speeds up my firefox start-up time somewhat. It also gives superfetch some MBs to use other than your memory.

    http://www.howtogeek.com/howto/windows-vista/change-superfetch-to-only-cache-system-boot-files-in-vista/

    http://gizmodo.com/gadgets/software/vistas-superfetch-and-readyboost-how-does-it-affect-you-234109.php
    Saturday, March 01, 2008 2:25 AM
  •  TheBigBadViolist wrote:
    I'm perfectly fine letting SuperFetch have its way with my system memory.


    thanks for your information in replies. But do you realy let superfetch running while the computer is on battery. I think superfetch is a battery killer because it engages RAM and HD very badly.
    Thursday, March 20, 2008 3:53 PM
  • First of all, Superfetch doesn't use the HD, that is the whole point of it so you don't have to use the HD's slow performance. This should not affect battery because the HD will be used less and RAM uses the same amount of power if it is fill or not. Indexing is much worse than superfetch for batteries. I am on a desktop and I have it off anyways because I find that searching is actually worse with it on. Your info is not correct but I'm happy to respond Smile
    Thursday, March 20, 2008 9:21 PM

  • Why would anyone want to use "superfetch" - all it does is slow your PC down because you have zero memory available for programs that will need that memory. No wonder Vista is slow when I open a game, its got the memory fully cached with stuff I hardly use.
    Thursday, May 01, 2008 2:39 AM
  •  Spazzie wrote:

    Why would anyone want to use "superfetch" - all it does is slow your PC down because you have zero memory available for programs that will need that memory. No wonder Vista is slow when I open a game, its got the memory fully cached with stuff I hardly use.


    Actually vista would be slower opening your game if it didn't have superfetch. It keeps data for programs you use often like your web browsers (or games if you use it often) in memory and will start faster because the data is already in memory and the hard drive doesn't have to be read from. (Which I have already explained is over 100x slower than memory) Once a program that needs lots of memory is opened like a 3D application superfetch dumps its cache while the memory is being used. You can see this by opening the task manager after you finish playing a game. You will notice that hardly any memory is being used because superfetch saw you were needed the memory and released it. It is a huge waste to not populate as much memory as possible. It speeds up your PC and uses its memory to the fullest. Turning off superfetch will not only slow down start-up times but waste power with unpopulated memory. Why anyone would want to turn off superfetch is a better question.
    Thursday, May 01, 2008 4:54 PM
  • It is well said but it is totaly wrong.

     

    Simple scenario:

    I have vista with 3gb RAM. Vista with nothing running just takes 1.2Gb of RAM.

    Now I start virutal PC and I can not start a mashine which needs 2Gb of RAM.

    So I need to reduce mem alocated to the VM, start it and then shut it down, because visat now frees memory.

    Now I can go back to my ram allocation of 2Gb start the VM again.

    Just too much hastle.

     

    So either vista needs to be smarted or MS Virual PC needs to improve...

    It is just easier to go back to XP and do not have that pain any more.

    It is so anoing to hear MS experts saing that Vista should just grab the resorces even if it does not realy need them...

     

    Thursday, August 14, 2008 11:44 AM
  • I totally agree with Anonymous09021939283923.

    It's annoying to have people respond as if we don't understand the use of cached memory.  I was optimizing my drive cache based on excess memory since the DOS days.  The problem is that at least some programs see the memory as used and unavailable, even if the OS is willing to release it.

    I'm not talking about some old 3rd party application either.  I'm talking about Hyper-V which is built into server 2008.  

    I'm running a windows 2008 64Bit windows enterprise full install Hyper-V server with only 4GB at this time.  I have a 1GB vm.  I've seen so much memory cached (2GB+) by the system that it refuses to start the 1GB vm let alone bring a second online.  All 2008 updates are installed.
    Tuesday, December 23, 2008 3:56 PM
  • You guys are all caught up with the inner workings of the system, rather than looking at the usability of the system.  If it is slower, then it is slower PERIOD.  Spazzie mentioned, "why would anybody use superfetch.  My question is, why would anyone still use windows?  It's painful to listen to you guys talk about issues that other OSs solved a decade ago.
    Sunday, January 31, 2010 12:37 PM
  • All y'all brainiacs might scoff...but a wise man once told me to either turn off indexing in vista or monitor its settings very closely.  It will index you to death.  You could set a max on ur cache too if you are feeling slowed down.  Let it use ur ram or buy bigger guns - then that percentage might drop slightly...slightly.  LOL  I wish all of us had the time and patience to run Linux as our primary...unfortunately...I have better things to do.  Like go to Famous Dave's.  Out.
    Wednesday, March 10, 2010 5:39 PM
  • I'm not sure what it is, but when I have the pagefile activated on my system (Win7, 3 GB RAM) the system is barely useable after a while. It fills the memory with all sorts of ____ which is never used, while all the applications sit in the swap file, making even chatting difficult (you type, and 10 seconds later what is typed appears!). Deactivating the pagefile helps _a lot_, because Windows is much less wasteful in using up memory. It's like switching from a 486 to a Core 2 Duo. The only problem is that if it runs out of memory, everything falls apart. Firefox stops showing images, crashes, Trillian stops showing parts of the screen, or even worse the system crashes, damaging system files while at it (had to do a system restore).

    Is there a way to stop Windows WASTING memory with useless ____? I deactivated SuperFetch now, will see if that helps. (And yes, I have had such behavior with Windows Vista as well).

    Sunday, May 23, 2010 4:33 PM
  • hey u seemed to know what ur on about, ok i think i kinda get what ur sayin but i got 4 gigs ram and its still runnin on 50% and i don't think i use anything too intensive. does this really sound ok??? cheers robbie!
    Thursday, November 25, 2010 1:21 AM
  • totally wrong.

     

    Turning off Aero will cause the CPU to render whats on your screen and lead to higher ressource usage..You will gain very few megabyted of free memory but the processor will be pressured like in XP. ( Vista classic and basic are both rendered like in XPs tech way ).

     

    Only Aero ( in Home Basic available as "vista standard" if wddm drivers are installed ) has the advantage of rendering the desktop via the graphics card. Using XP drivers or having a aero-incompatible card lets Vista fallback automatically to the XP behaviour, which causes high CPU loads, glitches in the window manager and having everything "flat".. its a disadvantage to prefer that if you could technically use the CPU friendly mode that also makes the glitches and flatness go away.

    If you want to speed up aero, you can so by disabling the min/max animation effects, disable all "fade in/fade out" effects, taskbar previews and set Aero  to a opaqe colour, unchecking "transparency".  This makes Aero very snappy and responding quickly to inputs.

     

    Aero has been invented to take OFF LOAD from the CPU and make the graphics card process whats on your screen, freeing the CPU to have more power for the "behind the scene" stuff.. That scenario will even make itself into the next Internet Explorer, making browsing the web hardware accelerated, taking even more power over to the graphics card for videos,pictures,text rendering..

     

     

    Friday, December 10, 2010 12:33 PM
  • Vista and 7 uses whatever Ram is available. If you have 512 MB it will use 480, if you have 3GB it will use 2,8GB ..

     

    most RAM is not "used", it is cached. Whenever a app needs memory Vista will instantly give the app what it needs.

     

    Vista ( the core OS ) runs within 380MB of Ram ok, see the Starter Editions spec. ( the 3app limit is irrelevant here, cause Explorer Windows,interne Explorer with twenty open windows or tabs, a running WMP11, sidebar gadgets and all the "fancy effects" turned on are the same way handled like in other Vistas and not considered programs ) Even this Edition ( like Home Basic,Premium,Ultimate ) has superfetching enabled and set to "3" in the registry..  and it fits into under 512 MB.

     

    Vista scales itself to whats there, that simply.

     

    I stopped  looking into the taskmanager. All rules that were vailid for 2000/XP memory tuning are now irrelavant.

    Vista and 7 use RAM different, but they not necessarily use more. Its a misunderstanding.

     

    On boot it prefetches fragments of your most used programs and stores them in the cache if its big enough . Thats why frequently used applications in Vista do open quicker then they would in XP.

     

    By the way : Windows7 behaves the same way .. ( and every Vista owner I can only give the advise to not expect wonders from win7 .. its the same mechanisms in vista and 7 how RAM is used. )

     

     

     

     

    Friday, December 10, 2010 12:45 PM
  • turning off the superfetch service alone does not what the naysayers here want to achieve.

     

    SO : Want Vistas memory mechanism not, want back XPs behaviour ( wasting memory ) :

     

    Disable superfetch service via services.msc ..

     

    Dig into the heart of Vista by starting regedit.exe as admin.

     

    Inside regedit navigate to


    KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters

     

    the subkey relevant for vistas caching behaviour  is

     

    "EnableSuperfetch" ( default value = 3 )

     

     

     A value ( hex) of "0" turns off ALL superfetching, might cause longer boot-times but will make Vista behave like XP


    For "0" to have the desired effect you **must**  also disable the Superfetch Service, said above plus "Readyboost" service.

     

    So do comparison.

     



     


    Friday, December 10, 2010 1:02 PM
  •  

    "And the most important rule of cache design is that empty cache memory is wasted cache memory. Empty cache isn't doing you any good. It's expensive, high-speed memory sucking down power for zero benefit. P.S. If you really want your RAM to be free (wasting power and not doing anything useful) you can turn off Superfetch by going to Run and typing services.msc locating Superfetch and setting it to Disabled


    http://www.codinghorror.com/blog/archives/000688.html

    This does make sense, as I know from my experiences with my old computer, which came with Vista 32 and 0.5G RAM.  By my upgrading the RAM ultimately to 2G, that old computer, which I bought in early 2007, has become a very serviceable machine for a lot of things I need a computer for (although not dev tools because the HD is so small).

    But if that's the case, as someone pointed out, what's the RAM graph for?   IOW if you're using Vista and you think you have a problem, what do you look for in the RAM readout?  It was pointed out upthread that Vista uses the RAM to save settings/data from programs you use a lot and will probably use again, but is that really optimal for everyone?   Is there a way we can tweak how much RAM it dedicates to this?

    Friday, March 11, 2011 7:50 PM
  •  

     

     

    Visa sometimes release cached memory, most times it does not.

     

    My system is currently using 15GB of ram. And my system is slow as hell. Why? well most of my ram is allocated to cache, so leaving a small amount free, and when I keep switching applications back and forth, it keep swapping those programs to the swapfile, making my system very slow, even if one of those programs is accessed 1min later, it has to swap it back to memory.

     

     

    Basically, even though I have 4GB of ram, since vista is using so much cache (1.8GB), my system is like a 2GB system. Since I runa server already 4GB needs to be in memory running most of the time. See the problem? 1-2GB keeps getting swapped to a swapfile, when it should be used in ram. At this point visa is now swapping the wrong programs to the swapfile just to keep its precious cache, making the system sluggish, as it will need those programs/services in a few mins. So it creats a unresponsive system.

     

    Wednesday, June 29, 2011 9:49 AM
  • The only time I was able to release cache memory, was to open 30 IE windows, and then close them all.

     

    But then the program was, my system was slow as hell until all the important things were swapped back into memory.

     

    On a system that needs a lot of working RAM for running processes), 50% cache is not a good thing, becuase at that point you are already running all that you need and to have prefetch of other things are not so important, as its most likely running.

     

    Also if you have a really fast hard drive (raid), or SSD, I would rather use that as a cache, then fill up my memory with prefetch., becuase at that point prefetch is pointless.

    Wednesday, June 29, 2011 9:53 AM
  • I've 4GB physical RAM here. approx 3GB available due to hardware requirements. on loading the OS I can use 70% o the RAM. but there's memory management utilities that you can use. These flush out unused things from physical to cache or virtual and leave you lots of physical RAM.  eg here at the moment I've nearly 3Gb pagefile, and  2.3Gb cache while physical RAM is at 40% ie 1.8Gb free of 3.07Gb total. Processes running 125. 8-)

    Not sure if Microsoft has one available - I use SmartRAM from the ASC toolkit. see www.iobit.com

    note: provided for informational purposes only.

    pkn2011

    • Proposed as answer by pkn2011 Saturday, August 06, 2011 2:08 AM
    Sunday, July 03, 2011 12:40 PM
  • Hi, re: options for Superfetch we find the following from the page:

    http://www.howtogeek.com/howto/windows-vista/change-superfetch-to-only-cache-system-boot-files-in-vista/

    "Find the EnablePrefetcher key on the right-hand pane, and change the value to one of these:

    • Disable Caching: 0
    • Cache Applications Only: 1
    • Cache Boot Files Only: 2
    • Cache Everything (default): 3

    You’ll have to restart your computer before this takes any effect. You could consider clearing out the \Windows\Prefetch folder after making this change to start with a fresh cache, but keep in mind that the next boot will probably be slower since Windows will have to cache everything again."

     

    Btw. Does this apply to Win7 also?

    Regards, pkn


    If my post was helpful - give it a Vote. If it helps solve your problem - propose it as Answer. ;-)
    Monday, August 15, 2011 6:08 PM
  • Unfortunately while your theory seems to be based on a good point, it is wrong in practice. The 2D interface uses 2D acceleration that has been in graphics cards for years. It does NOT cause the CPU to render. Turning on Aero will cause it to use the 3D acceleration features which will result in similar CPU usage, but the size of the additional textures and supporting non-graphics features (thumbnails, etc) result in greater memory usage.
    Tuesday, September 20, 2011 1:45 PM
  • anyone who's intrested in lowring there ram usage try this http://www.koshyjohn.com/software/memclean/
    • Proposed as answer by tebina Saturday, April 14, 2012 11:45 AM
    Saturday, April 14, 2012 11:42 AM
  • right click on task bar from list click on task manger go to services there you can see so many unwanted services running in background click on then click end task careful don't end windows services 

    Friday, February 22, 2013 5:52 PM
  • just read entire feed...my head is spinning...so many proposed answers, a few helpful checks and more things to try if i dare but no one has come back to check answered...other than basims shot in the processes dark, who's right?

    Monday, March 11, 2013 1:40 AM