Jump to content
CCleaner Community Forums
Willy2

Cleanmem memory manager

Recommended Posts

It hasn't changed...it puts everything in the page file, and then memory usage jumps again when you go back to other programs... :rolleyes:

It might work against Firefox's memory leaks, however...

Share this post


Link to post
Share on other sites

Aethec,

 

Cleanmem (CM) does not ""put everything in the pagefile"". It reclaims unused memory and then it doesn't need to ""put it in the pagefile"". Perhaps the maker of CM has a solution for your memory problem since you're using Windows 7. And that or one other computer program could be the resaon why CM doesn't improve memory usage on your computer.

Share this post


Link to post
Share on other sites

I use CM mostly because IE and Outlook don't let go of unused memory (outlook can often push ~500MB+ mem usage). When I run CM I tend to reclaim ~15-20% of my memory (i.e. just drop from 56% to 43%)

Share this post


Link to post
Share on other sites

If it doesn't use the pagefile, would you mind explaining why FF's memory usage significantly drops when running CleanMem, and then goes back to its previous level once the FF window is active again?

I don't believe in all those memory cleaners/optimizers/defragmenters. They simply call the EmptyWorkingSet Windows API, which forces everything to be paged.

 

A quote from a well-known Windows expert...

As you've surfed the Web, you've probably seen browser pop-ups such as "Defragment your memory and improve performance" and "Minimize application and system failures and free unused memory." The links lead you to utilities that promise to do all that and more for a mere $9.95, $14.95, or $29.95. Sound too good to be true? It is. These utilities appear to do useful work, but at best, RAM optimizers have no effect, and at worst, they seriously degrade performance.

 

But I guess if it actually has an effect on your system, that's a good thing...I only believe what I see, especially about Windows "optimization".

Share this post


Link to post
Share on other sites

I think that if you`ll read here from :about cleanmem and on,it will be self explanatory as to how cleanmem works and may clarify the clouds of doubt.

Share this post


Link to post
Share on other sites

I think that if you`ll read here from :about cleanmem and on,it will be self explanatory as to how cleanmem works and may clarify the clouds of doubt.

 

Well, the author doesn't explain which API he's calling...but it still doesn't work on my system :rolleyes:

Share this post


Link to post
Share on other sites

Well, the author doesn't explain which API he's calling...but it still doesn't work on my system :rolleyes:

 

I call EmptyWorkingSet

http://msdn.microsoft.com/en-us/library/ms682606%28v=vs.85%29.aspx

 

Which DOES not move to the page file,

SetProcessWorkingSetSize does how ever move to the page file.

http://msdn.microsoft.com/en-us/library/ms686234%28v=vs.85%29.aspx

 

The key to realize between these two is this.

On EmptyWorkingSet

"Removes as many pages as possible"

 

Windows will remove what it can, doesn't force. Where as SetProcessWorkingSize will force

"Sets the minimum and maximum working set sizes for the specified process."

 

When I tested both SetProcessWorkingSize page the page file grow like mad.

 

What the EmptyWorkingSet does do is push to the Standby List. Which is in memory and keeps from hitting the drive.

 

http://download.microsoft.com/download/7/E/7/7E7662CF-CBEA-470B-A97E-CE7CE0D98DC2/MemorySizingGuidanceWin7.docx

 

"Standby List

The Standby list contains unmodified pages that have been removed from process working sets, which effectively makes the Standby list a cache. If a process needs a page that is on the Standby list, the memory manager immediately returns the page to its working set.

All pages on the Standby list are available for memory allocation requests. If a process requests memory, the memory manager can take a page from the Standby list, initialize it, and allocate it to the calling process. This is called repurposing a page.

Pages on the Standby list are often from recently used files. By keeping these pages on the Standby list, the memory manager reduces the need to read information from the disk. Disk reads can decrease system responsiveness."

 

Now a system WILL NOT become faster because an app is using less memory. What the side effect of CleanMem is, is to keep windows from using the page file. Thus by not using the slow hard drive that much the system as a whole is more repsonsive.

 

Thats all I was aiming for. And yes it does help with memory leaks.

 

Also from my page

So how does moving memory to the standby even help?

Take a process say, Firefox.exe

[50MB currently in use memory] - [25MB Unused, but still claimed by Firefox] = total memory 75MB

 

When the memory is moved to standby Firefox claims the 50mb back instantly, where the other 25mb isn't, so that memory will be free to the rest of the system.

 

As proof stop CleanMem from running, let Firefox grow large in memory usage. Then run CleanMem. You will see Firefox drop, then grow back up, but not to the large size it was.

 

This is how CleanMem uses the Windows memory manager to its advantage. Now by having that extra memory free to the system, Windows has no need to go running to the page file, which is ran off your drive and is where the slow down comes from.

 

That's why people who had high page file usage before CleanMem notice the biggest improvements after using CleanMem

 

I think I should also clarify, I am no memory expert.

 

I am a tech who made a program to help my users.

 

I did the research, made the program, then tested the crap out of it.

So my backing and defending of my CleanMem program comes from the results I have seen with my own eyes. And what a lot of other users have seen as well. :-)

 

-Shane

Share this post


Link to post
Share on other sites

HA Shane ninja'd Wiley by posting before wiley told us he'd post.

Share this post


Link to post
Share on other sites

Well, then, I was right from the beginning when talking about EmptyWorkingSet :lol:

I guess I'll try CleanMem next time Firefox reaches the gigabyte of used RAM (not trolling - that actually happens).

Share this post


Link to post
Share on other sites

Nice to see you on here Shane.

 

Your little gem has quite a number of supporters on here.

 

That always makes me feel great :-)

 

Sometimes I wish I didn't care so much what people think of my work, because I take it to heart.

 

I was on another forum fighting my geeky heart out defending cleanmem. Bugs me when a user doesn't try it and bashes it.

 

A little history on CleanMem may help understand why I made it in the first place.

 

About 4 years ago, XP days.

I got a new customer (I run my own computer repair business for 9 years now)

This new customer had some old dell machines with only 512mb ram on some and 1 GB on others. They where all running autocad.

 

They would complain how slow the system was when using it. The memory was being maxed and the page file was being used heavily.

Being a programmer and wanting to make my customer happy and happy with me I went looking for an answer and fix.

 

I had used the SetWorkingSetSize on my cs fire monitor program. I wondered if that could be applied to other processes. So I used that API first and made cleanmem at home and tested it. With the goal of getting the page file to be used less.

 

Well that api didnt work. The page file was growing with it. Crap I thought. The I found the EmptyWorkingSet. Ok lets see how this does. Hhmmm... Doesn't remove as much memory, but the page file didnt grow! Ok lets do it.

 

Made CleanMem, and put it on my customers computers.

I was shocked when a week later they told me what ever I did was great, autocad had never ran so fast and stable. Autocad not needing the page file is what made it faster.

And no, I couldn't talk them into more memory, these old dells had a max memory limit of 1gb!

 

So for 2 years I put this on every single one of my customers computers. All of them never having memory problems or page file slow downs. I was happy with this little tool. Gave me an edge over other local techs.

 

Then 2 years ago when I started pcwintech.com I need programs on it to get it started. I put CleanMem out.

Sent it over to Tim & Jim over at major geeks (These are great guys by the way). Tim comes back and says forget it. We haven't added a memory cleaner on here for years.

 

I said I know what you mean, would you be willing to just try it? Tim did, and was shocked, majorgeeks added cleanmem to their site :-)

 

Since then I have had users who have had it help them a lot. And the more powerful your machine the less of an impact.

 

I have also had to defend it, because as Tim warned me, your walking into a hell fire of a debate on the net over this.

 

he wasn't kidding :-)

 

Shane

Share this post


Link to post
Share on other sites

I've come across debates about Cleanmem all over the web.

 

Many many forums in fact, and it seems pretty clear that you will always have doubters, but as you have said yourself, if folk don't believe, then don't use it. Percentage wise, I think the converts far outnumber the doubters.

 

If it's being talked about, then that's half the battle.

:)

Share this post


Link to post
Share on other sites

I know that Cleanmem (CM) works well on my computer (laptop, 512 Mb, Windows XP) because WindowsTaskmanager tells me so. I simply need this program in order to keep my laptop running more smoothly. I also noticed that Windows doesn't need to access the harddisk that often anymore.

 

It curtails memory usage of e.g ...... Piriform's Defraggler !!! It often keeps running in the background without being used. Then it regularly occupies over 25 Mb of memory. When CM has run memory usage can go down to about 1.5 Mb.

 

I don't wipe/curtail the System File Cache because then opening a folder can slow down significantly. Explorer then needs to access the harddisk again in order to extract the icons from all the files. One can literally see Windows recreate the content of that folder. And that can be (comparitively) very time consuming.

Share this post


Link to post
Share on other sites

Makes me happy knowing you guys like my work.

 

I care about my work and take a lot of pride in it. Which I hope shows in all my programs and support.

 

Treat people right, they will treat you the same. :-D

 

It is a double edge sword though. Caring so much about my work means I take things said about it to heart. And stress about things I really shouldn't stress about lol.

 

Shane

Share this post


Link to post
Share on other sites

I thought I would also elaborate more on some users saying CleanMem has stopped some memory errors and made some things more stable.

 

This is for anyone who is wondering how a user would come up with using less memory as being more stable.

 

(This is simply my opinion on this and I am looking at it from a repair tech & programmer point of view)

 

On a system that is under heavy page file usage you get a higher price for using the page file. And not just the slow down.

The hard drive can have a bad file system and even bad sectors, or even a highly fragmented page file. If the page file is messed up in any way from this it will cause the memory in that bad location to fault. Either killing the program or blue screening windows all together.

 

This is no different than having bad memory. The hard drive just simply is a very large price to pay.

 

When users use CleanMem and the page file usage is reduced, we also reduce the chances of the crashes caused from the page file. So in turn things "appear" more stable.

But the programs themselves are no more stable than they where before. They are simply more stable by avoiding (In my opinion, the death trap) of the page file.

 

From a programmers point, a program doesn't know if the memory it is using is in the physical memory or the page file.

 

Did I explain this correctly? lol

 

-Shane

Share this post


Link to post
Share on other sites

I know that Cleanmem (CM) works well on my computer (laptop, 512 Mb, Windows XP) because WindowsTaskmanager tells me so. I simply need this program in order to keep my laptop running more smoothly. I also noticed that Windows doesn't need to access the harddisk that often anymore.

 

It curtails memory usage of e.g ...... Piriform's Defraggler !!! It often keeps running in the background without being used. Then it regularly occupies over 25 Mb of memory. When CM has run memory usage can go down to about 1.5 Mb.

 

I don't wipe/curtail the System File Cache because then opening a folder can slow down significantly. Explorer then needs to access the harddisk again in order to extract the icons from all the files. One can literally see Windows recreate the content of that folder. And that can be (comparitively) very time consuming.

 

 

Thanks for letting my know the file cache does that. Its not suppose to, I am using the same api as here

http://technet.microsoft.com/en-us/sysinternals/bb897561

 

You may notice that the Cache's size changes immediately and then proceeds to shrink or grow quickly. This is because the system automatically trims working sets once a second. The Cache pages that are released are still in memory, but can be relinquished quickly for use by other programs that need more memory. Similarly, the Cache can eaily regain pages as applications access file system data.

 

So if you can confirm that the file cache is causing that I will make the file cache disabled as default instead of enabled :-)

 

Shane

Share this post


Link to post
Share on other sites

I love Firefox and extensions. Kind of like moding a car. So a while ago I changed CM's schedule to every 10 minutes on this old XP. Like I said, been using it since Shane developed it.

Share this post


Link to post
Share on other sites

@smc1979,

 

I must eat a part of my own words. I tried a number of things and it seems that putting the words ""file cache"" in the CM ignore list didn't prevent Windows from being forced to rebuild the content of a folder. To again extract the icons from the files on the harddisk.

 

It could be attributed to the following: Memory usage on my computer doesn't exceed approx. 55% (according to CM 1.65). I ran Defraggler and its memory usage went briefly above 41 Mb and that ""excessive"" memory usage could have forced the Windows XP memory manager to flush a part of the memory which contained precisely those icons.

 

That begs the question: what is the other approx. 45% of the memory used for ? To store datafiles (mp3, text files), systemfiles (*.dll ???). It seems it certainly contains those (folder-)icons.

Share this post


Link to post
Share on other sites

@smc1979,

 

I must eat a part of my own words. I tried a number of things and it seems that putting the words ""file cache"" in the CM ignore list didn't prevent Windows from being forced to rebuild the content of a folder. To again extract the icons from the files on the harddisk.

 

It could be attributed to the following: Memory usage on my computer doesn't exceed approx. 55% (according to CM 1.65). I ran Defraggler and its memory usage went briefly above 41 Mb and that ""excessive"" memory usage could have forced the Windows XP memory manager to flush a part of the memory which contained precisely those icons.

 

That begs the question: what is the other approx. 45% of the memory used for ? To store datafiles (mp3, text files), systemfiles (*.dll ???). It seems it certainly contains those (folder-)icons.

 

I am working on a new version of the min monitor to include a key hook function, so you can set what key to hit on your keyboard and have cleanmem run. I use this for when I am in games.

Also adding a few other things.

 

Any changes you think I should make while I am at it?

 

Shane

Share this post


Link to post
Share on other sites

 

Any changes you think I should make while I am at it?

 

Shane

 

Shane: Windows 7 32bit Ignore List batch file does not work (even if run as admin) I had to manually paste my ignore list into %systemroot%\system32\

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×