Performance per Watt: Hey, I already know it’s important, don’t I? (The intro, part I)

What is performance per Watt?

Performance per Watt is pretty straight forward when you first look at it. Then you begin to sink in the quicksand you’ve blithely walked into. The panic sets in as you sink lower and lower. Eventually you decide to ignore the whole complicated mess and go back to saying to yourself how straight forward it is. Of course, deep within your heart of hearts, you know that it’s not.

For most of us, performance per Watt is nothing more than how much our computer can get done on a given battery charge.

Let’s dissect this a little further and try to get down to something a little more concrete. The real problem with the above very general description is that it makes intuitive sense but not engineering sense. We need to take it apart and put it in more engineering terms.

A Watt is how much energy you’re using per second. It’s the rate of energy consumption. Why is this important? Well, are we asking about how much our computer can get done given so much energy (Joules)? Or are we asking how much our computer can get done when fed energy at a certain rate (Watts)? What’s the difference? The first is easier to understand. Let’s say we’re using a laptop. Then the first asks how much can we get done for a certain battery size.

So what’s wrong with the second? It’s a rate. You might say that to get performance per Watt, all we have to do is to divide the number of cycles executed over the life of our battery with the energy in the battery. Even neglecting the fact that we haven’t quantified what “performance” is, we run into a problem. Rates are good when considering steady state situations, but typical client usage – servers are different – is anything but steady state. This means that performance per Watt is dependent upon a whole lot of factors. These are things like the type of user / application suite you typically run, the OS you use and its power policy, your processor architecture, the peripherals you have, etc. It gets messy fast.

And we haven’t even tried to figure out what “performance” means in the context of power.

So what’s the conclusion? Do we forget performance per rate of energy usage (Watt) and just go with how much we can get done given so much energy (e.g. how big of a battery you have)? Unfortunately not. If we can quantify the rate of energy consumption then we can theoretically calculate the energy consumed by a whole host of different users, e.g. business vs home users, nerd vs coffee shop users, etc.

Next: A high-level look at performance

Einzelheiten zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.