Can energy consumption drive application improvements?
The first keynote session at the InfoWorld Virtualization Executive Forum was by David Reilly of Credit Suisse. Fascinating discussion with dozens of interesting points raised, but the topic I was most interested in was Mr. Reilly’s response to an audience question “Do you monitor power consumption and at what level? His response was that they do; at the box, cabinet and room level. He said he can even judge applications on how much power they use, and compare them head to head.
I think it is great that Green Technology and
power savings is driving some IT decision making, and Virtualization
helps with our ability to measure consumption. Not just provisioning memory and processor, but power as well. Various changes make this worth spending time to consider: Power has gotten significantly more expensive. Global Warming is no longer considered a kooky left wing hoax, but a real environmental issue. Heat in the data center continues to climb. There are signs that the nearly linear progression of
Moore
’s law may be coming to an end. All things told, we need to continue to look for efficiency and cost savings where we can, and I think it is great the companies like Credit Suisse is monitoring power usage, especially if they make some of their application purchase decisions based upon this metric!
I started my career in Operating System development. At that time memory and processing power were rare resources that we had to use efficiently. We had to make clever uses of things like ‘Overlay’ files to optimize the use of memory, and we spent considerable time reviewing the merits of sort algorithms, queuing theory, hash functions, caching, call backs and every other operation to improve resource usage. Today we see Applications and Operating Systems that are developed seemingly without regard for efficiency and offer shockingly poor performance even with wanton consumption of resources. Installing services into memory when they are not needed, applications grabbing huge chunks of memory that will never be used, OS’es that are not judged by how fast and efficiently they provide resources, but how many features have been packed into them. Sure, it’s worse in consumer software than commercial, but still, I could swear it’s like the vendors are looking for ways to waste processor cycles and memory.
If we can measure resource consumption at this level – memory, processor and power – and alter corporate buying decisions based upon this, we provided a real emphasis for software vendors to look at efficiency of resource usage. Virtualization not only allows for inspection and comparisons, it really demands attention to general resource consumption metrics. If an application not only has to meet certain feature requirements, but resource usage requirements as well, IT organizations have yet another metric to judge software quality and cost. And a way to push back on some of these horrid programming practices by a huge number of software & tool vendors. The direct and indirect benefits could be considerable savings.
Now if we had security metrics that were this straight forward.
Re: Virtualization & Power Consumption
Great idea. But the market isn't ready for this. Don't get me wrong - Green is good. But Green is also a theme and a very hip one at that. Just take a look at the money being poured into all manners of Green (and not so green but masked as green) investments. Reminscent of 1999 / 1999.
Application vendors need to make better quality and efficient code. Vista and Office 2007 is a classic example. Was it really necessary to redo the whole Office UI so that it takes 5 minutes to find the 'align objects' function?? Where app vendors struggle is on understanding what the business problem is they are trying to solve. The 'every function but the kitchen sink' comes from trying to be all things to all people in the quest to expand market share. Most users will tell you that enterprise apps do, at best, 60% of what they need. The other 40% is inhouse code, 3rd party software with overlap capabilites or good ole' human intervention.
Until app vendors get their solutions 'on the mark' code bloat and it's associated power hogging will not abate. Beside what would all those hardware and virtualization vendor sell?
Comments