So why should you care about power management and energy efficiency?

Power management and energy efficiency are issues of growing importance in IT and software development. In simple words, applications whose design considers power management could help customers save money from energy costs and thus improve customer satisfaction. Additionally, there are other reasons like performance/stability but in the era of efficiency and cost reduction in business today, those are key factors.

Microsoft product teams have been making progress in the area of power management and energy efficiency of our own products. Not only have we found ways to both make progress in the area but we’ve also begun to identify the challenges in doing so. Specifically in the Windows PC ecosystem, the biggest challenge for improvements in power management has been the applications that run on the Windows. Even with gains made in the OS, we’ve found that software applications can potentially “break” power management and in effect lose any gains made in the Operating System.

For this reason, the company’s environmental sustainability team has created a set of resources, best practices and tools for software developers to help better understand power management’s role in software application design. While power management may be a new concept to many developers and organizations developing software applications, there are a number of things Windows developers can begin doing today to make progress. The guidance and best practices we’ve created is a collection of our own learning’s  while building software products and our work with Independent Software Vendors (ISVs) and broad developers.

The guidance is wide ranging but two papers in particular are must-reads for software developers building Windows apps:

The Science of Sleep: This paper covers high-level best practices that software developers should follow in Windows 7 to ensure that their application, service, or driver is compatible with and takes advantage of sleep and display power management in Windows. Developers of Windows applications, services, and drivers must ensure that their applications honor and work intelligently with power management-related user and IT administrator preferences and policies.

Timers, Timer Resolution and Development of Efficient Code: This paper provides information about high-resolution timers and periodic timers for Windows operating systems. It provides guidelines for developers to use timers efficiently with platform power management. It assumes that the reader is familiar with concepts of periodic activity and scheduled timers.

While the industry has more to do this area, the resources we’ve developed can help any Windows software developer to get started. Visit the new MSDN Learn About Windows: Power Management page to read the whitepapers and find tools available Windows application developers.

Here’s to a powerful yet greener IT!