Power-Aware Bus Coscheduling for Periodic Realtime Applications Running on Multiprocessor SoC

Execution time for realtime processes running on multiprocessor system-on-chip platform varies due to the contention on the bus. Considering the worst case execution cycles necessitates over-clocking the system to meet the realtime deadlines, which has a negative impact on the system power requirements. For periodic applications coscheduled on multiprocessor with shared bus, the cycles needed by a memory transaction fluctuate based on the execution overlap between processes' activities on bus. In this work, we show the effect on execution cycles of different scheduling overlap of processes. Experiments' results demonstrate that the execution cycles, and therefore the clock frequency, can be lowered by up to 24% on a 4 processor MPSoC. As the power consumption varies cubically with frequency, this reduction can lead to a significant power saving. Instead of exhaustively simulating all configurations to search for optimal scheduling overlap, we devise a scheme to predict the effect of scheduling. We propose the use of shift-variance of bus traffic profile of applications running individually on the system to predict the effect when scheduling these applications simultaneously. We show that the devised predictor of scheduling effect highly correlates to the behavior observed through simulations.

[1]  Brad Calder,et al.  Automatically characterizing large scale program behavior , 2002, ASPLOS X.

[2]  Yann-Hang Lee,et al.  Voltage-Clock Scaling for Low Energy Consumption in Fixed-Priority Real-Time Systems , 2003, Real-Time Systems.

[3]  Eric Rotenberg Using variable-MHz microprocessors to efficiently handle uncertainty in real-time systems , 2001, Proceedings. 34th ACM/IEEE International Symposium on Microarchitecture. MICRO-34.

[4]  Scott Shenker,et al.  Scheduling for reduced CPU energy , 1994, OSDI '94.

[5]  J. D. Nicoud,et al.  REYSM, a high performance, low power multi-processor bus , 1986, ISCA '86.

[6]  Luca Benini,et al.  MPARM: Exploring the Multi-Processor SoC Design Space with SystemC , 2005, J. VLSI Signal Process..

[7]  Kiyoung Choi,et al.  Power optimization of real-time embedded systems on variable speed processors , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[8]  Donatella Sciuto,et al.  Static power modeling of 32-bit microprocessors , 2002, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  Frederick Williams,et al.  Reasoning With Statistics: How To Read Quantitative Research , 1986 .

[10]  Flavius Gruian,et al.  System-Level Design Methods for Low-Energy Architectures Containing Variable Voltage Processors , 2000, PACS.

[11]  Thu D. Nguyen,et al.  Using Runtime Measured Workload Characteristics in Parallel Processor Scheduling , 1996, JSSPP.

[12]  Eric Rotenberg,et al.  FAST: frequency-aware static timing analysis , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[13]  Gang Qu,et al.  Power minimization techniques on distributed real-time systems by global and local slack management , 2005, Proceedings of the ASP-DAC 2005. Asia and South Pacific Design Automation Conference, 2005..

[14]  Eric Rotenberg,et al.  Virtual simple architecture (VISA): exceeding the complexity limit in safe real-time systems , 2003, ISCA '03.

[15]  Yann-Hang Lee,et al.  Voltage-clock-scaling adaptive scheduling techniques for low power in hard real-time systems , 2000, Proceedings Sixth IEEE Real-Time Technology and Applications Symposium. RTAS 2000.

[16]  Gurindar S. Sohi,et al.  A static power model for architects , 2000, MICRO 33.

[17]  Rami G. Melhem,et al.  Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation in Multiprocessor Real-Time Systems , 2003, IEEE Trans. Parallel Distributed Syst..

[18]  Eric Rotenberg Using variable-MHz microprocessors to efficiently handle uncertainty in real-time systems , 2001, MICRO.

[19]  Sujit Dey,et al.  Communication architecture based power management for battery efficient system design , 2002, DAC '02.

[20]  K. Shanmugan,et al.  Random Signals: Detection, Estimation and Data Analysis , 1988 .

[21]  SherwoodTimothy,et al.  Automatically characterizing large scale program behavior , 2002 .

[22]  Kanad Ghose,et al.  Reducing Delay and Power Consumption of the Wakeup Logic Through Instruction Packing and Tag Memoization , 2004, PACS.

[23]  Rudy Lauwereins,et al.  Energy-Aware Runtime Scheduling for Embedded-Multiprocessor SOCs , 2001, IEEE Des. Test Comput..

[24]  Constantine D. Polychronopoulos,et al.  Fast barrier synchronization hardware , 1990, Proceedings SUPERCOMPUTING '90.

[25]  M TullsenDean,et al.  Symbiotic jobscheduling for a simultaneous multithreaded processor , 2000 .

[26]  Brad Calder,et al.  Basic block distribution analysis to find periodic behavior and simulation points in applications , 2001, Proceedings 2001 International Conference on Parallel Architectures and Compilation Techniques.

[27]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[28]  M. Small,et al.  Detecting periodicity in experimental data using linear modeling techniques , 1998, physics/9810021.

[29]  Dhabaleswar K. Panda,et al.  A reliable hardware barrier synchronization scheme , 1997, Proceedings 11th International Parallel Processing Symposium.

[30]  A. Snavely,et al.  Symbiotic jobscheduling for a simultaneous mutlithreading processor , 2000, SIGP.