Do I need to stop programs to extend battery life?

September 9, 2013 By | Add a Comment

The answer is yes and no.

Less software activity equal longer battery life. It's simple physics. However, well-written programs do not make activity when they are not used and stopping those programs does not make any difference to the battery life. Instead, if you stop and restart the program frequently, it even can waste battery power due to the overhead at every startup. It's also not a good idea to stop system service programs without knowing what that program exactly does.

The important thing is to understand which program needs to stop and which does not. This posting explains how to find that out.

Two types of software activities that drains battery

Before going into detail, let me explain about the two types of activities programs can cause when they are idle:

  • CPU time used by the program itself

    This is the kind of the activity most people are familiar about. Program should use CPU time to do something useful for you. When the program is idle and doing nothing, they should not use CPU time. However, some battery life unfriendly programs keeps doing something in the background. Keep pinging server, monitoring something, etc. They may not be using significant CPU time, but their battery life impact adds up as you keep such programs running for long time.

    You can find out which program is using CPU time with traditional process monitoring tools such as Windows Task Manager.

  • Change timer interrupt frequency

    Windows operating system, by default, programs timer interrupt to fire 64 times every second to do some house keeping tasks. This allows your laptop to enter approximately 16 milliseconds (1000 milliseconds / 64 = 15.6 milliseconds) of idle period between the interrupts if no program is running. It may sound very short period of time, but for most CPUs it's long enough to enter the deepest (least power consuming) power saving states.

    However, some programs request operating system to increase the frequency of the timer interrupt up to 1000 times per second. With this request, the longest idle period is limited to only 1 millisecond. This prevents many CPUs from entering the deepest idle states and increases the power consumed by the CPU.

    Imagine you have 90 minutes to take a nap. If you can sleep for 90 minutes uninterrupted, you will probably feel refreshed after that. But, if you are woken up every 10 minutes, your sleep will be very shallow and you feel grumpy after the 90 minutes. Similar thing happens with your laptop. Your laptop does not become grumpy, but consumes more power if timer interrupt frequency is increased. Newer laptops with more sophisticated power saving features are more vulnerable to the timer frequency increase and you can lose hours of battery life.

    Traditional process monitoring tools do not tell which program requests frequent timer interrupt frequency. You need to use special tools, like Battery Life Maximizer, to find it out. Please read the last section of this post for the details.

So, which program should be stopped?

It really depends on what program you use and how you use them. In addition, the result varies when program's version changes. So, please use this list just as a guide.

Programs you usually do not need to stop

  • Most of the Windows OS built-in programs

    This includes user visible programs such as Windows Media Player, Windows Media Center and various service programs that run in the background.

  • Most of the office productivity programs

    Including Microsoft Office, Dropbox, Evernote and many others.

Programs you should stop

  • Web Browsers

    Even if the browser is not making any activity by itself, web pages you visit might do so. (See another article about web browsing for the details) In addition, some web browsers (including Google Chrome 30.0.1599.66 as of this writing), tend to request frequent timer interrupt for long period and drains your battery.

  • 3rd party media players

    Many media players request to change timer interrupt frequency when the program starts up and keep that request active until the program is stopped.

How Battery Life Maximizer helps you to determine which program to stop

Because the behavior of program can vary depend on so many factors, I would strongly recommend to test programs in your laptop by yourself. It's relatively easy process and takes only about five minutes.

  1. Start programs you want to check. If appropriate, open documents or web pages, and minimize them.
  2. Unplug power cord and switch to battery mode.
  3. Leave your laptop idle for 5 to 10 minutes.
  4. Open Battery Life Maximizer.
  5. Select “Program Activity” page.
  6. Select “Show short term (current discharge cycle) data” in the dropdown list at the top of the page.
  7. See the “CPU Usage” column of each program.

Rule of thumb is a program using more than 1% CPU during idle can significantly reduce battery life. If you have such program in the list, you should stop it when you are not using it. (Alternatively, find replacement for that program.)

You do not need to worry too much about the programs that use less than 0.5% CPU. You usually can get only couple of minutes or less of battery life by doing so.

How Battery Life Maximizer helps you about the timer interrupt frequency?

Screenshot: Battery Life Maximizer pop-up warns about timer change request.

Battery Life Maximizer pops up a balloon message when a program requests to change timer interrupt frequency so that you will be aware of its battery life impact.

Screenshot: You can choose how to handle the timer change request using Battery Life Maximizer.

You can also set your preference about how that request will be handled. You can make the request ignored and allow your CPU to enter deepest idle state. Some program may have problem with this setting, but most programs work just fine.

If you set to ignore the request, you do not need to stop the program to save battery life.

Try Battery Life Maximizer
Learn about Battery Life Maximizer

Filed in: TechBlog | Tags: , ,

Please leave your feedback

Trackback URL | RSS Feed for This Entry