Energy Star for Software?

Green IT means two different things. One is to make IT itself greener, and the other is to make other things greener. Let’s focus on the former. As everyone knows, IT consists of hardware—such as servers, storage equipment, and network gear—and software. Up until now, energy efficiency has been focused on hardware but not on software.

I tried to cover this issue in the Green Software Unconference last August. See here and here.

In those posts, I listed several factors to consider in making software energy efficient:

  • Parallel programming—hard to program, nondeterministic (such as race condition)
  • Design/architecture—modularized structure vs. big monolithic chunk (e.g., SMTP server)
  • Interpretive vs. compiled—web languages vs. C, C++, and Java
  • Performance vs. ease of use—heavy on the ease of use, and the heavy lifting left to hardware
  • Optimization—of compilers and other utilities
  • Selection of algorithms

Although my session drew some audience, interest in software energy efficiency was limited. Why is this the case? First and foremost, most software engineers want to make their programs function correctly according to the specification. And then the programs will be optimized to run faster. Although optimized software tends to consume fewer computing resources and is likely to be greener, there is no guarantee that it is energy efficient.

What is energy efficiency for software? A more energy efficient server hardware box would produce the same results (like MIPS, million instructions per second) with less wattage. In other words, with the same amount of wattage, it produces more. MIPS is a standard metric for any server hardware box. If we use the same idea, then an energy efficient software piece would produce more results with the same wattage. In other words, an energy efficient software piece requires less wattage to produce the same results. The problem here is how we define the results. Software has no universal metric like MIPS for hardware.

  – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Energy Impact of Increased Server Inlet Temperature
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Two pieces of software could be compared for their energy efficiency if:

  • They are run on the same hardware platform (same CPU, memory, and so forth).
  • They produce exactly the same results.

There may be other conditions, but I cannot think of any at this point. This subject has been on my mind. Recently, I attended FountainBlue’s Clean Energy Entrepreneurs Forum on the topic "Leveraging Software for Clean Green Solutions” March 1 (5:30–7:30 p.m. at Applied Materials in Santa Clara.)

The focus of this meeting was on how to make other things greener with software. Software energy efficiency was too early to discuss because it is far more important to make other things greener at this stage. I will keep this topic in mind and try to make a point from time to time.

Zen Kishimoto

About Zen Kishimoto

Seasoned research and technology executive with various functional expertise, including roles in analyst, writer, CTO, VP Engineering, general management, sales, and marketing in diverse high-tech and cleantech industry segments, including software, mobile embedded systems, Web technologies, and networking. Current focus and expertise are in the area of the IT application to energy, such as smart grid, green IT, building/data center energy efficiency, and cloud computing.

4 Responses to Energy Star for Software?

  1. arlen March 4, 2010 at 7:12 am #

    I’ve always thought we were missing one of the best ways to go green in IT – software. Currently we tend to use generic software and get enough hardware to support it. Maybe we need to code specific efficient software to do the job and then maybe we can do without a lot of added hardware.

  2. Zen Kishimoto
    Zen Kishimoto March 4, 2010 at 10:38 am #

    Thanks for the comment. Yes, it is very hard to explain what I am saying here. Most people do not get it. Most people are focusing software to make other things more energy efficient. But I am talking about software itself. How do we compare a low end DB from Oracle and MySQL? There are many ways to make a piece of software energy efficient (requiring less CPU time and memory). But it is not well researched or documented.

  3. Hawk
    hawk March 4, 2010 at 12:51 pm #

    What are the theories of reasons why that is so Zen? Seems like – from my marketing perspective – there is an advantage to be touting that sort of “new” initiative?

  4. Zen Kishimoto
    Zen Kishimoto March 4, 2010 at 1:11 pm #

    Again, most people do not get it. The current effort in energy efficiency is towards something you can see and touch. You cannot see or touch software. CDroms containing software are not software. I have gotton a nod from three people so far, including you. I heard someone from EPA was interested in Energy Star for Software, once……

Leave a Reply