Software // Enterprise Applications
Commentary
1/7/2004
02:39 PM
Fred Langa
Fred Langa
Commentary
Connect Directly
RSS
E-Mail
50%
50%

The Explorer: Resource Leaks, Part Two

Fred tests a dozen "memory optimizers" and finds some surprises.

The Most Popular Approach: Memory Optimizers
On the surface, "memory optimizers" are a far more rational approach to solving resource leaks. Your system's pool of total available memory is a combination of two kinds of RAM (random access memory): actual physical memory chips, and a reserved area of hard disk space called "virtual memory." Although virtual memory is a kind of RAM, in order to avoid confusion, when I refer to RAM in the rest of this article, I'll mean the RAM provided by memory chips.

On its own, Windows lets your RAM fill up, as it should, because that's what it's there for: For the most part, you want the stuff you're working on to be in RAM because that's the fastest, most-responsive memory you have.

But when you load more apps and data than your RAM can hold, Windows makes judgments about what's important and what's not -- and what's likely to be needed again soon, and what's not. Windows then writes some of the less-vital contents of RAM to disk in the virtual memory area. When something's needed from the virtual memory area, Windows loads it back into RAM, making room (if need be) by swapping something else out of RAM onto the disk. It works pretty well, but (of course) isn't perfect. That's where "memory optimizers" come in.

There are differences among the various optimizers, but a typical memory optimizer is a small utility with one major trick up its sleeves: It can pretend to be much bigger than it really is. When it runs, the optimizer monitors how much of your physical RAM is in use. When your RAM is almost all in use, the memory optimizer pretends that it's a huge app needing 20MB or more of RAM. (You can usually adjust how much RAM you want the optimizer to pretend to need.) Windows thinks a huge new application is coming aboard, and obligingly makes room for it by writing, say, 20MB of something else out to disk. The memory optimizer then goes back to its real size, leaving you with a nice, fat "hole" in your RAM: This RAM is ready to be used by whatever app you load or use next.

Some memory optimizers also "defragment" the rest of your physical memory, moving memory chunks around so that the available, unused RAM is all in one chunk. Along the way, many of these optimizers claim to recover leaked memory as part of the defragging process.

Combined, opening the hole in RAM and defragmenting the rest of your active memory are supposed to give you a "just booted" feeling, making your PC faster, more responsive, and more stable.

Problem #1: Resource Losses
Memory optimizers operate on your pool of general memory. They have nothing whatsoever to do with the fixed-size User and GDI memory areas that are the real problem with resource memory leaks.

So let me be clear: These memory optimizers DO NOT and CANNOT do anything at all about true low resource problems. If you have a leak that's causing low resources in your GDI or User areas, it won't matter if you shuffle code and data from RAM to disk and back all day. No amount of opening "holes" in RAM will do anything at all to restore lost GDI or User resources.

Right now, there are probably readers saying, "Fred, you're all wet!" because some folks swear by memory optimizers. Here's a snippet from an actual e-mail I got last week -- one of many similar such messages:

"Fred, [name of utility] saves my butt -- I get my resources down to 5 percent and then it kicks in and restores them to 50 percent..."

But invariably, when I check out whatever tool the reader thinks is recovering resources, I discover it's working on his or her pool of system RAM, and not "System Resources" in the normal sense of User and GDI. The confusion is understandable because of the way the, um, less polished memory optimizers toss around the term "System Resources" to make it sound like they attack the much more serious problem of User and GDI leaks. Again: They do not.

Previous
2 of 5
Next
Comment  | 
Print  | 
More Insights
Building A Mobile Business Mindset
Building A Mobile Business Mindset
Among 688 respondents, 46% have deployed mobile apps, with an additional 24% planning to in the next year. Soon all apps will look like mobile apps – and it's past time for those with no plans to get cracking.
Register for InformationWeek Newsletters
White Papers
Current Issue
InformationWeek Tech Digest September 23, 2014
Intrigued by the concept of a converged infrastructure but worry you lack the expertise to DIY? Dell, HP, IBM, VMware, and other vendors want to help.
Flash Poll
Video
Slideshows
Twitter Feed
InformationWeek Radio
Sponsored Live Streaming Video
Everything You've Been Told About Mobility Is Wrong
Attend this video symposium with Sean Wisdom, Global Director of Mobility Solutions, and learn about how you can harness powerful new products to mobilize your business potential.