A Power-aware Scheduling
System-Level Power Management
IMPACCT is a system-level design tool for exploring power/performance trade-offs in real-time embedded systems by means of power-aware scheduling and architectural configuration. This demo centers around an interactive graphical tool for a powerful scheduler that handles not only min/max timing but also min/max power constraints, which allow designers to quickly evaluate a wide range of design points from extreme low power to high performance.
We present a new scheduling tool for system-level power management in embedded-systems. This tool addresses the following key issues that are not adequately addressed by previous works. First, the new generation of embedded systems must be designed to be power-aware, rather than just low-power. Second, the power management decisions must be made at the system level, rather than only at the component level. Power-aware systems are those that must not only minimize power when the power budget is low, but also deliver high performance when required. They subsume traditional low-power systems as special cases. The power managers must also track the availability of all power sources and the power usage of all consumers in application-specific operating conditions. These conditions include the different energy models from expensive (e.g., non-rechargeable battery) to free (e.g., solar source), and the variance characteristics of the power consumers in the changing environment.
We believe that power-aware designs must be done at the system-level, not just at the component level. Amdahl's law applies to power as well as performance. That is, the power saving of a given component must be scaled by its percentage contribution in an entire system. Thus, it is critical to identify where power is being consumed in the context of a system; and a successful power manager must consider both computation domains (e.g., embedded processors, memory) and non-computation domains (e.g., mechanical and thermal subsystems) and coordinate their power usage as a whole system.
We present a prototype of a novel power-aware scheduling tool that supports system-level power management. Our underlying application model captures timing constraints on communicating tasks, as well as min/max power constraints on the entire system. The core scheduler produces a schedule that satisfies stringent timing constraints and the max power budget; it will also make the best effort to meet the min power goal corresponding to the free energy sources. The result is visually presented to the designers in two views. The time view shows the timing sequence of parallel task execution on multiple resources. The power view shows the system-level power curve of the schedule with corresponding attributes, including different energy sources, major power consumers, expensive energy vs. free energy, etc. Our tool can effectively automate the design space exploration with different energy/performance trade-offs. Moreover, the designers can manually intervene with the automated scheduling process by imposing additional timing constraints in the time view, while observing the results in the power view interactively.
Our work is motivated by the NASA/JPL Mars rover. It features several interesting problems that cannot be effectively handled by traditional low-power techniques. First, the rover has different energy sources: a non-rechargeable battery and a solar panel. Second, the major power consumers do not even include the embedded processors, but they consist of mechanical motors and thermal heaters. By applying the power-aware scheduling techniques to this application, our tool can produce alternative designs that achieve both improved performance and reduced energy cost simultaneously. This tool forms the basis of the IMPACCT system-level framework that will enable designers to explore many power-performance trade-offs with confidence.
Back to top
DAC paper submission
The presentation to be given at DAC
Back to top
|A schedule presented in Power-aware Gantt
The tool provides several automated scheduling techniques. In addition, the designers can manually arrange the bins in the time view and observe the results interactively.
|Result (1): a timing-valid schedule
Finish time = 15, Energy cost = 48
|Result (2): a power-valid schedule
Finish time = 15, Energy cost = 44
|Result (3): an optimal schedule with minimum
Finish time = 15, Energy cost = 21
Back to top
IMPACCT project home
Jinfeng Liu's Home Page
Back to top