Can you save power by closing programs?

I was reading a blog the other day, minding my own business, when I came across this question in the comments section:

What about the green argument? Holding information in RAM requires power to keep it there, or else the computer forgets it. RAM that has nothing in it has no power cost to the system, therefore you are being more power-wise by keeping system memory clear?

Well, that’s half true. I wrote a quick reply, but thought it was an interesting enough question to go a bit more in-depth here. I guess another title for this post could be: How does memory work?

Thankfully, writing about the latter would require a lot more typing than I’m willing to do, so I’ll just discuss the original topic in a long-winded way.

Memory, A Quick Background

First, a bit of background. Memory is one of the three building blocks of a computer (with the other parts being some variation of a processor or input/output). For the sake of simplicity, we’ll pretend the only memory in a computer is something called Random Access Memory (or RAM), or the “quick storage” of a computer.  What does it do? It stores “stuff.”

Every time you run a program, do a calculation, and even more your mouse, things are happening in memory. Most books depict memory as a filing cabinet storing ’1′s and ’0′s, which is only partially right. A more accurate approximation of memory would be a tank of water with holes in it. Neat!

Wait. I didn’t lose anyone, did I? Let’s start again.

  • Memory stores information in billions and billions of bits (’1′s and ’0′s) or “cells.” You can also think of it as billions and billions of water tanks.
  • If the tank is full, you have a ’1.’ If the tank is not-full, you have a ’0.’

Simple! Now it gets a bit more complicated.

How Does Memory Stores Information, or
How Is Memory Like A Water Tank?

Memory stores information very similar to water tanks as I mentioned above. Electricity sits in cells (or tanks), waiting to be of some use. Like water tanks, memory cells can spring leaks. There are different kinds of memory like there are different kinds of water tanks. Water tanks made of cement, for example, will hold water better than tanks made of uncured wood. Like wooden tanks, DRAM (the most common type of memory–the kind people think of as “memory”) leaks electricity. It’s made using capacitors. Why use capacitors if they leak? Manufacturer’s use capacitors for the exact same reason people build leaky wooden water towers: they’re cheap!

As with leaky water towers, memory cells needs to be re-filled when they deplete to a certain level. In a water tower, this may happen once every few months. Capacitors need to be re-filled thousands of times a second! This can be quite costly when it comes to electricity.

Now, imagine the example water tower we’ve been using is several hundred feel tall with no stairs and no water level indicator. How do you check whether it’s full? Simple. You empty the water tower. Memory is no different. DRAM cannot be examined directly without destroying the data already in it. HowStuffWorks explains this process with a pretty animated picture, if you’re interested.

Individually, neither the leaky cell nor destoyed data issues are huge problems. Together (and in the case of DRAM), it’s a big enough problem that memory uses constant electricity. Several thousand times a second, the memory has to be examined. If it isn’t examined fast enough, the computer cannot be tell if it’s holding a ’1′ (full) or a ’0′ (not-full). When it is examined, the information is destroyed, so the cell must be re-filled with electricity.

What does all this have to do with saving power?

Back to my original topic. Imagine you have 20 programs open and want to close 10 to save memory. Does it also save power consumption? No.

Memory that is not-full needs to be examined the same as memory that is full. That takes power. Also notice that I say “not-full” instead of “empty.” That’s because a value of ’0′ does not always mean empty/no power. Values of ’0′ do often require some power. It has to do with electron stability (and stuff like that).

Furthermore, just because memory isn’t in use does not mean it is non-full!

Huh? If something isn’t in use, shouldn’t it be empty?

Just because you close a program does not mean the memory it once used is empty. Let’s return to the water tower example (yes, I know it’s getting old, but I’m almost done writing). Let’s say you don’t need the water tower anymore. Maybe you’ve decided to grow cactus instead of corn. You don’t have to empty the tower just because you don’t use it. In fact, emptying the tower would cost resources! You’d need some place to put the water; you’d need somebody to empty the tank. Heck, you’d probably need somebody to spray for mosquitoes afterward! Memory is the same way. Why change it when it takes resources (time) to do? (As an aside, it ultimately costs less to continuously re-fill memory cells than to empty them, but that’s another post entirely).

I get it! I think..?

Well, I certainly hope I’ve shed some light on the whole “saving power from memory” thing. It can get much more complicated, but for the sake of a blog post, I hope I’ve given a comprehensive explanation.

I do recommend closing programs that you’re not using. I open and close Firefox hundreds of times a day (simply because it takes up screen realestate). It can helps prevent memory leaks and lots of other scary-sounding things. But if you’re like me and close programs a lot, it don’t help save power.

1 comment to Can you save power by closing programs?

Leave a Reply