become more important as well. As
a simple example, present-day local-area networking interconnect and
subsystems have evolved in two important respects: link-aggregation is
increasingly used to bolster network
bandwidth and reliability; and individual interconnect speed has advanced
from 1GB to 10GB, with 40GB on the
horizon. A transceiver for a 10GB network interface card may now require
as much as 14W when operating at full
speed, with a consequential power reduction when its link speed is reduced
to 1GB or lower (about 3W at 1GB, 1W
at 100MB). Other high-speed interconnects such as InfiniBand can be expected to have similar energy considerations for the overall system. Little
attention has been given to the energy
implications of communication interconnects in any of their various architectural manifestations, from on-chip
to wide area networking.
the evolution of
The most strategic aspect of energy-efficient computing will be the evolution of application software to facilitate systemwide energy efficiency.
Although we can certainly expect new
application interfaces to the system
software supporting the development of new energy-efficient applications, the transition of historical and
present-day applications represents a
long-term evolution. How will we address the problem of greater energy
efficiency for the remainder of the
installed base in the interim? Obviously, it will not be brought about as
the result of a unique epoch in the
implementation of all existing applications.
One possibility for addressing the
energy agnosticism of existing applications is to perform extrinsic analysis
of their runtime behavior. Empirical
data can be gathered about the degree
to which application performancei is
sensitive to varying levels and types of
resource provisioning. For example,
one can observe the degree to which
performance is increased by the addition of CPU resources, or the allotment
i This assumes one can define some objective
external metric of performance, which may be
of a CPU with higher-performance mi-croarchitecture, and so on. 15 The application might then be labeled, in its
binary form, with its measured degree
of sensitivity, without requiring the
alteration of its existing implementation. The operating system could
then use the data to assign resources
that pursue a certain specified performance level or to locate an appropriate
performance-versus-energy consumption trade-off.
Inevitably, we expect that a combination of techniques will be needed:
both explicit, in which the application itself informs the system of its
throughput and resource provisioning
needs; and implicit, in which static
and dynamic analysis is used to model
resource needs relative to performance
and energy consumption.
We are still at the debut of energy-conscious computing, with a great
deal of the industry’s attention being
given to the introduction and use
of power-management mechanisms
and controls in individual hardware
components rather than to the broader problem of energy efficiency: the
minimization of total energy required
to run computational workloads on a
system. This article suggests an overall approach to energy efficiency in
computing systems. It proposes the
implementation of energy-optimization mechanisms within systems
software, equipped with a power
model for the system’s hardware and
informed by applications that suggest
so that they can achieve their required
throughput levels and/or completion
In the near term, a number of heuristic techniques designed to reduce
the most obvious energy waste associated with the highest-power components, such as CPUs, are likely to
remain practical. In the longer term,
and for more effective total energy
optimization, we believe that techniques able to model performance
relative to the system’s hardware configuration (and hence its energy consumption), along with an improved
understanding and some predictive
knowledge of workloads, will become
Maximizing Power Efficiency with
Asymmetric Multicore Systems
Alexandra Fedorova, Juan Carlos Saez,
Daniel Shelepov, Manuel Prieto
1. 80plus.org. recent standards for power supply
2. barroso, L. and holzle, u. The case for energy-proportional
computing. IEEE Computer (Dec. 2007), 33-37.
3. Chu, s. The energy problem and Lawrence berkeley
national Laboratory. Talk given to the California Air
resources board (Feb. 2008).
4. Energy Information Administration, u.s. Department
of Energy. residential Energy Consumption surveys
5. Environmental Protection Agency. EPA report to
Congress on server and data center energy efficiency
(Aug. 2007 ); http://www.energystar.gov/ia/partners/
6. Fedorova, A. operating system scheduling for chip
multithreaded processors. Ph.D. dissertation. harvard
university (sept. 2006).
7. Fedorova, A., saez, J. C., shelepov, D., and Prieto, M.
Maximizing performance per watt with asymmetric
multicore systems. ACM Queue (nov./Dec. 2009);
8. Garrett, M. Powering down. ACM Queue (nov./Dec. 2007).
9. Katz, r. h. Tech titans building boom. IEEE Spectrum
(Feb. 2009); http://www.spectrum.ieee.org/green-tech/buildings/.
10. Leventhal, A. Flash storage today. ACM Queue 6, 4
(July/Aug. 2008), 25-30, 25-30; http://queue.acm.org.
11. Mogul, J., Argollo, E., shah, M., and Faraboschi, P.
operating system support for nVM+DrAM hybrid
main memory. In Proceedings of Usenix HotOS XII
12. reams, C. Energy-conscious computing—formal techniques
for energy cost minimization (forthcoming paper).
13. rees, M. Anniversary address to the royal society,
14. roth, K. W. and McKenney, K. Energy consumption by
consumer electronics in u.s. residences. TIAX LLC,
Cambridge, MA (Jan. 2007).
15. shelepov, D., saez, J. C., Jeffery, s., Fedorova, A., Perez,
n., huang, Z. F., blagodurov, s., and Kumar, V. 2009.
hAss: a scheduler for heterogeneous multicore systems.
ACM Operating System Review 43, 2 (2009), 66-75.
16. siddha, s. Getting maximum mileage out of tickles. In
Proceedings of the Linux Symposium (ottawa, ontario,
June 2007), 201-208.
17. yao, F., Demers, A., and shenker, s. A scheduling
model for reduced CPu energy. In Proceedings of
36th Annual Symposium on Foundations of Computer
Science (1995), 374–382.
David Brown is currently working on the solaris operating
system’s core power management facilities, with particular
attention to sun’s x64 hardware platforms. Earlier at sun
he led the solaris AbI program: a campaign to develop
and deliver a practical approach to binary compatibility for
applications built on solaris.
Charles Reams is a Ph.D. student in computer science
at the university of Cambridge. his research interests
are focused on quantitative and emergent aspects of
programming languages; he hopes to move his academic
work on energy- and cost-efficient scheduling to the