CleanMem V.1.4.2
Tried this and it did make a noticable difference on both my computers, a lap top and desk top both running Vista.
http://www.pcwintech.com/cleanmemFrom the Docs...
--------------------------------------------------------------------
PLEASE READ: Detailed information on the new 1.4.0 update
I have learned from the past when it comes to Cleanmem, so I'm going to make sure I have all the information needed for anyone to understand what this new feature is and does.
First, the reason why I added the clean file cache to Cleanmem.
On both my Windows XP and Vista computer every time I did a full system backup, or did some heavy gaming my systems turned into snails. I'm sure a lot of you out there have been through this. Even opening a minimized window was horribly slow let alone opening up new programs. even if you left the system going for a bit it wouldn't fully recover and the only way to get the system back was to reboot. This drove me nuts!
So I started looking into it, after my system would get this way I would check my memory (I have 4gb) cpu (quad core) and page file. NONE of them where hardly being used. I was scratching my head. Where is the slow down coming from? So when I tried to simply open my minimized Firefox it was taking forever to redraw on the screen. I look down and see my hard drive light fully lit up! my hard drive was working like mad. Aha! that's where my bottle neck is coming from. but, if the page file is barley being used why is my drive working so hard now? So now I knew where to look.
During my research I came across this, CacheSet
http://technet.microsoft.com/en-us/sysinternals/bb897561.aspxSo I read the page thoroughly, download the program and ran it, as it was running my cache was at about 250mb's. (this was when my system was a slug after a full system backup)
I clicked the clear button, cache went down to 4mb and climbed and stayed at around 25mb. Big difference. So time to see if it made a difference in the system.
And WOW my system was responding like normal again. I could open things like I had just rebooted and the hard drive was no longer thrashing around doing simple tasks.
So I wanted to add this to Cleanmem. But I knew good and well I had better be prepared to explain things :-)
I came across 2 other pages during my research into it.
http://smallvoid.com/article/winnt-system-cache.htmland
http://blogs.msdn.com/ntdebugging/archive/2007/11/27/too-much-cache.aspxSo now when Cleanmem runs, both the processes and the file cache and cleaned. Recovering even more memory and performance. Again now, you wont see tons of performance on a normally running system, but it does keep things in shape. Just like Cleanmem always has.
Take care!
Shane
----------------------------------------------------------------------------
And...
-----------------------------------------------------------------------------
PLEASE READ: How Cleanmem Works
Ok for once and for all I am going to explain in detail how Cleanmem works, why it works and how it can & can not make a difference in your system.
Every now and then as I go across the net I find forums and pages talking about Cleanmem, and to be honest I am truly surprised to see the people throwing fits about the program being a memory cleaner and how if it is a memory cleaner it must not work! Yet they never even try it. Then when I come across pages like on
www.raymond.cc who actually took the time to try it and test it makes me feel like my work is appreciated by my fellow geeks & techs as he took the time to try it, he didn't judge before hand. Yet reading comments on his site you will find people shocked it works and others saying it cant work and they didn't try it.
I also get emails of people asking me how it works, and so I decided to make this section to explain how Cleanmem works. So now any questions should be answered and all the people out there who don't even bother testing the program will have no room to talk. Its amazing how a free program I originally made for my customers has been such a headache and a pleasure at the same time. You've got to love the internet.
So now lets start with how Cleanmem works. Cleanmem is very small as it doesn't need to do much. First off Cleanmem doesn't clean the memory from the processes itself! It asks Windows to do that. When the program starts up it grabs a list of running processes. It then grabs the ID of each process and calls the Windows API EmptyWorkingSet for each processes, Cleanmem of course checks the ignore list and skips those processes. Then Windows cleans the process, and once all the processes have been cleaned Cleanmem closes itself.
Well that's the part that seems to freak some people out, if the memory is being cleaned then the process itself will suffer! the memory will be pushed to the hard drive! the world will end! And guess what they are wrong. So let me explain why. The API call only removes memory no longer being used by the process. It doesn't touch memory in use. Here is an example from a visual basic programming stand point.
Dim I as long
I = 20000
Done. Now 'I' has been set as a long number, it has now taken a spot in memory. It then loads the 20000 into memory. At the end of the call the memory is no longer used but still being taken up by the program because I didn't clean it up! A lot of programs do this, they take memory but don't always cleanup after themselves. Well the API is like a little house cleaning. It removes all safe unused memory. When the process runs the function again the memory is then taken again without any difference in performance to the program because it would do it anyways, it wont reuse the old memory, this is why you see program climb and climb in memory usage as you use them. So why let all the unused memory just sit there?
Here is an example, I loaded of my Age Of Conan game, it was using about 600mb of memory, when I run my Cleanmem the memory only lowers to about 500mb, and the game doesn't miss a hit, why? because that 500mb of memory was currently being used and windows didn't touch it, only the memory left over was removed, which isn't going to touch the games performance since the memory wasn't in use. This is also why the page file doesn't grow, cause no memory is being moved away from the process.
Will you see performance increase? Yes if a lot of your memory is being eaten up, plus keeping the processes cleaner adds a small performance increase when dealing with memory. But if you have a butt load of memory like I do you wont see amazing increases in performance, but if your running low on memory it makes a big difference.
If you have a lot of memory why use Cleanmem? Well I use it cause I like my system running tight and clean. Just because my system has a lot of memory doesn't mean I want things sucking it all up if it isn't even using it. That's why I made Cleanmem sort of a set it and forget it. I never need to worry about a program having memory leaks or not cleaning up after itself.
So what I did with Cleanmem was take a built in Windows API and made it easy and automatic to keep no longer used memory free. The program is free, the setup is easy and life is good. So if for some reason you don't want to use Cleanmem, that's fine. I'm not trying to push a free program on people, I could care less if someone doesn't want to use it. But for those of you that do use it I'm glad you find it useful and I'm here if you have any questions or needs.
A quick note on the API call itself. This is the same API used by Microsoft in its empty.exe in the Windows 2003 Resource kit. This is also the same api that all .Net programs use by default when you minimize them and their memory lowers. So now instead of being just for .Net, Cleanmem lets you use it on all your programs.
I hope this answers all questions and helps people understand once and for all about Cleanmem.
Take care!
Shane
------------------------------------------------------------------------------------------
Thoughts??? Comments???