ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Main Area and Open Discussion > General Software Discussion

Rambooster. Junk?

<< < (7/13) > >>

f0dder:
Yeah, fodder, and XP does it's job so well...

I don't know why you don't even try it.
If you haven't.
With your knowledge you could post some real figures.
-cmpm (March 21, 2009, 07:21 PM)
--- End quote ---
I have 8GB of RAM in my workstation right now and run without pagefile, so I can't do any "testing" - what would you want me to post, anyway?

Sure thing, running a "memory optimizer" will show more free RAM - but it is a pretty pointless statistic. First, unused RAM is wasted RAM. Second, Windows does outpage/discard as necessary. Third, simply showing free ram graphs doesn't show the overheard of pagefile disk I/O. Fourth, it doesn't show the overhead a fragmented process heap causes.

So, sure thing, if you obsess over "free RAM" statistics you will feel perceived placebo value from tools like this. But the smart thing is restarting processes that leak, and not obsessing over "free" memory.

PS: I did toy with programs like this back in my less-than-a-gigabyte-memory days, and I even wrote my own "trimws" tool... so it's not like I don't have any experience with the subject.

cmpm:
Ram being occupied without use is a waste also.

Which is the point of all this about CleanMem, I believe.

Steven Avery:
Hi Folks,

sounds like bull (or incorrect testing) to me - I haven't done very intensive RE of the APIs ... stuff could work slightly differently - I very much doubt that there's any substantial difference ...  I might just end up doing some more intensive RE of the issue, since I like getting to the bottom of things. -f0dder
--- End quote ---

  So it doesn't look like you are in a position to talk of 'bull' -- since Shane is so far the only one who specifically talks about comparing the effect of the two functions on the page file.  It is always possible for a programmer to err, yet you acknowledge the functions are not operationally identical, a key point. So if Shane erred it would have to be demonstrated and would likely have been simply his own technical difficulty (e.g. "incorrect testing") nothing deceptive or shamistic.  And so far we are not in any position to say he erred.

  Later in the thread (maybe pg. 12) Shane considered the idea of giving the option of calling either of the two functions.  That would help seeing whether there was in fact a practical difference.  Although understandably .. in the environment of that thread .. I do not think he implemented the option.  He may well do so if asked from a programmer really interested in checking, which could save some time.

  Here is one simple thought, from a programmer .. not a PC or XP or low-level programmer, though.

  Possible advantages -- unused RAM is not wasted -- since it is *immediately* available for usage.  Where XP seems to trip up is that at the moment that you hit enter .. XP says .. oops, I need some RAM pronto .. do this, do that, do the other .. and your keystrokes are waiting. You go out for morning herb tea or Teccino or coffee. Perhaps with this background work the new action springs into play immediately, or quicker.  More a timing and prep-chef type of thing.

  From an esthetic point of view, I agree it is ugly to want to go in there and push around existing programs, especially since the operating system is, overall, well designed for memory management. (One reason I have a few megs ready to install into this puter.) On the thread referenced -- 'Bear' indicated that he felt his 'Magic Jack' program was not too happy with being pushed around, yet an exclusion list was added to the program so this is far from a dealbreaker.  If only a couple of programs object.

   On the other hand, consider the process tamer programs -- those are written precisely because the operating system has some lacks in how it handles priorities. (On the IBM mini-computers you rarely have to bother, background and batch tasks are automatically put much lower than interactive .. yet sometimes.. you do a smidgen.)  With Process Tamer I specifically raised the priority of my bookmark programs for very similar reasons, how they seem to go to sleep on a new keystroke after a wait .. and a higher priority does something (perhaps makes XP reluctant to page out ?). Priority management in XP may be weaker than memory management, and more amenable to our adjustments, however what we are wondering is if there may be a careful memory tweak that helps some of the people some of the time.  Since so much RAM stuff is counter-productive, and some is marketing sham of the 'registry cleaning' style, it is awkward if one or two programs actually do help and the techniques were found by little nobodies.

Shalom,
Steven

f0dder:
Ram being occupied without use is a waste also.

Which is the point of all this about CleanMem, I believe.
-cmpm (March 21, 2009, 07:54 PM)
--- End quote ---
A lot of people don't understand what goes into Windows (and other modern OS) memory management, though - all they see is a "free memory" figure, which they then obsess over. To be fair, it is a rather advanced subject, and the standard Windows task manager doesn't help the situation (calling commit-charge "PF usage" on XP, leading people to think they always have a lot of stuff paged out to disk, for instance).

Thing is, blindly trimming working sets just isn't a good idea. It doesn't really free up memory - it can discard 'clean' memory pages (basically limited to executable code from .exe and .dll files, which will have to be re-read from disk next time it's needed), and it can pageout 'dirty' memory pages to the pagefile (meaning costly write operation, and re-read from pagefile when needed again). When you trim a process, you will often see it's working set go low, only to shoot back up again after a few seconds.

So it doesn't look like you are in a position to talk of 'bull' -- since Shane is so far the only one who specifically talks about comparing the effect of the two functions on the page file.  It is always possible for a programmer to err, yet you acknowledge the functions are not operationally identical, a key point. So if Shane erred it would have to be demonstrated and would likely have been simply his own technical difficulty (e.g. "incorrect testing") nothing deceptive or shamistic.  And so far we are not in any position to say he erred.-Steven Avery
--- End quote ---
I'm not saying Shane is deceptive or shamistic, and perhaps bull was too harsh a word to use. I still do find it unlikely that the two calls should have a different effect, though, since they both call the same low-level API. I acknowledge there's a risk I could be wrong, but I doubt it :)

Possible advantages -- unused RAM is not wasted -- since it is *immediately* available for usage.  Where XP seems to trip up is that at the moment that you hit enter .. XP says .. oops, I need some RAM pronto .. do this, do that, do the other .. and your keystrokes are waiting. You go out for morning herb tea or Teccino or coffee. Perhaps with this background work the new action springs into play immediately, or quicker.  More a timing and prep-chef type of thing.-Steven Avery
--- End quote ---
The only time you will see noticable waiting time from a memory request is in the case where stuff has to be written out to the paging file. Yes, when memory is freed from one process it has to be zeroed out before being handed over to another process (security reasons), but I'd like to see a computer capable of running NT where you're able to measure the effect of this.

As for thread priorities, NT handles them quite well. The reason there's benefit from using things like process lasso/tamer (and there is, especially for single-core CPUs without hyperthreading) is simply that a lot of application developers don't bother setting their thread priorities. It's not like it's hard to set the priority of a long-running computation thread to "below normal", yet there's a lot of developers that don't bother.

Steven Avery:
Hi Folks,

My own try is now very favorable.  Some programs (like Firefox) do work their memory most of the way back up (maybe to 75% of where it was, so there is still a big reduction, 50K on my system is normal e.g. 225K down to 35K back up to 175K) but others like Eudora seem to really remain very happy after losing their 100K + bloat (which was created, likely, at the time of downloading a lot of mail .. email forums .. if you don't download as much, then this may apply less).  Another that seemed to behave well after giving up its memory was an interesting program Xinorbis  (apparently it uses the memory to figure out its disk tree scan, once it has the final results it forgets to release .. naughty .. 50K gain).  Those were three programs that I watched fairly closely, later I plan to look at 5-10 more.

The theory that Windows XP would do the same has two problems.

1) Windows XP will only take such radical action at the moment of emergency .. when you are out of memory, or very low, and that is precisely when you are waiting for 10 seconds, or a minute, or more, for Windows to sort out how to make memory available, if it succeeds at all (this is where the occasional XP lockup occurs). XP does not do the necessary steps preemptively.

Also XP obviously defines that moment late in the day.  You can be having a slower system from some extra paging before XP goes into action.  XP clearly waits a long time before really taking radical action (such as increasing the size of the page file). And when it does that at times it plays hopscotch, as I saw with MJ Registry Watcher, going up and down too much.  Better to be preemptive.

2) It is unclear whether Windows XP uses the most effective functions and algorithms and timing for this particular need even in its last-minute attempts.  (e.g. Using the function CleanMem uses first before trying more difficult methods.) Empirically, I would say not, since we end up waiting a long time in the moments of memory shunting around.

Thus, as well as buying memory, I would say, so far, that CleanMem simply works.

And I know that brings forth tremendous negative response from those who dislike such external tinkerings (which historically include kludges and even counter-productive attempts) .. however I have to tell you what I have found.  Sure I could accomplish the same with a reboot, simply closing programs is awkward at best.  Thus CleanMem takes an intermediary spot in my system management.  I prefer at this time to use it myself by hand (having dropped an icon into the Start menu, which is not given on installation, then when I run it I can see it in DTaskManager) -- I'm not even sure if it is working from my scheduler :) .  I should ask Shane to give a balloon notification option at least when the scheduler runs.

Perhaps folks got so used to comparing XP to the horrid earlier Windows memory management 3.1, 95, 98 etc. that it was given an aura of great excellence that was overstated.  XP memory management is very good, agreed .. apparently we are discussing a weak point.

Shalom,
Steven Avery

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version