Software Power

This time the story won't be about how powerful software is, but how much power it consumes. And we are not talking about processor power required to run an application either. We talk about the power consumption. Strange, you think? No longer strange... This issue affects all users, but has most impact on those who live their lives on batteries. I mean using battery powered notebooks or PDAs. The stress modern applications put on processors is growing at least along the curve of Moore's Law. And despite engineering efforts put in the design of new processors, the power consumption of portable devices is still far from what we would like to have (a notebook recharged once a month?). Recently there has been much talk about so called performance per watt, a number representing how many CPU instructions can be executed consuming a watt of energy. But does this really matter to the typical end user, who struggles to get his 3 hours of notebook life from the batteries? Performance per watt is just a theory. Real life is if you have to carry a power supply with you or if the batteries will last the entire flight over the Atlantic?

One factor that contributes the most to the practical side of the power equation is the behavior of the software you run on your machine. "I run only the Web browser" you say. Really? Have you ever seen the list of processes being executed in parallel by the Windows XP? If not, I recommend you do it. Launch the task manager (click Start->Run and type taskmgr and hit enter). Go to the Processes tab and count. My present counter shows 70 processes. Most of them have CPU load close to zero (fortunately) but this is not always the case. Start playing a movie clip and look at the CPU load. This is what drains your batteries. Modern CPUs have various so called "sleep" states. Both shallow and deeper. Sleep state is when the CPU does almost nothing and helps preserve batteries. This happens continuously, for example when you read this text. As long as nothing is "moving" on the screen, it is very likely your CPU is in a shallow sleep state, and the battery drain is reduced. But at the same time it is enough the web page contains a Flash control (most of the "rich" ads use Flash) with moving parts, and your battery goes down faster than expected. That is why I hate Flash. It drains my battery and hogs my bandwidth (still a scarce resource in mobile scenarios). But marketing web designers love Flash and that is why it won't go away anytime soon.

Other examples are the recent remarks of Windows Vista power drain generated by the new Aero Glass library. Think twice before you opt for a new Vista notebook. In the end this may not be what you expect... And there are tons of application related power problems. Like the MindManager eating the idle cycles and preventing the CPU from entering the shallow sleep mode. The most ironic case I was fighting with just last week was the IBM ThinkPad Battery Maximizer application (SIC!!!). The small green battery state indicator present on all IBM and Lenovo notebooks. Its main purpose is - as the name implies - to help you maximize the battery life. Yet for some unknown reason the version I have tends to fall in some endless loop condition, resulting in >90% CPU utilization, bringing the entire computer to its knees and draining the battery like an engine starter in winter. So think twice before you install any new and nice application on your machine. And watch the Task Manager. If you care...

Comments

  1. Hate flash? Just disable displaying it's contents. In Firefox try Adblock (Tools->Extensions->Get More Extensions->Adblock). After reloading just press Ctrl-Shift-F and conserve battery power not to mention your eyes and brain (by the way try brainfuck programming language, you may like it!). In Opera press F12 and disable it. Piotr.

    ReplyDelete

Post a Comment