Dynamic REsource Allocation and Management (DREAM)
Moore's Law suggests a steady reduction in power consumed per operation. However, while each generation of hardware brings increased power efficiency, the demand for power and performance from ever more complex user applications and operating systems is increasing at an even faster rate.
Since performance and energy consumption are tightly
coupled, higher performance is usually accompanied with increased energy
consumption. While hardware in a high performance state accomplishes a task
faster than hardware in a lower performance state, the tasks demanding high
performance are generally interleaved with tasks with no specific performance
demands. For tasks that demand high performance, a system that provides high
performance for the duration of the task completes the task more quickly than a
system that provides lower performance, and as a result saves energy by
powering down the unneeded components sooner. Providing the same level of
performance for tasks that have no specific performance demands is wasteful.
The challenge of power management and performance optimization lies in
dynamically matching performance levels and resource availability to the
demands of a variety of tasks. Similar, tradeoffs are observed when reliability
of data storage is concerned. The energy costs go up if we want to provide
higher reliability because storage device count increases as well as energy due
to data verification.