Computer systems must make a fundamental trade-off between performance and energy usage. The days of “faster is better” are gone-energy usage can no longer be ignored in designs, from chips to mobile devices to data centers. This has led speed scaling, a technique once only applied in microprocessors, to become an important technique at all levels of systems. At this point, speed scaling is quickly being adopted across systems from chips [32] to disks [51] and data centers [50] to wireless devices [35]