Performance yield-driven task allocation and scheduling for MPSoCs under process variation

With the ever-increasing transistor variability in CMOS technology, it is essential to integrate variation-aware performance analysis into the task allocation and scheduling process to improve its performance yield when building today's multiprocessor system-on-a-chip (MPSoC). Existing solutions assume that the execution times of tasks performed on different processors are statistically independent, which ignores the spatial correlation characteristics for systematic variation. In addition, a unified task schedule is constructed at design stage and applied to all products with various variation effects, which restricts the maximum performance yield that can be achieved for MPSoC products. To tackle the above problems, in this paper, we present a novel quasi-static scheduling algorithm. Based on a more accurate performance yield estimation method, a set of variation-aware schedules is synthesized off-line and, at run time, the scheduler will select the right one based on the actual variation for each chip, such that the timing constraint can be satisfied whenever possible. Experimental results demonstrate the effectiveness.

[1]  Ishfaq Ahmad,et al.  Static Task Scheduling And Allocation Algorithms For Scalable Parallel And Distributed Systems: Classification And Performance Comparison , 2000 .

[2]  Elaheh Bozorgzadeh,et al.  Process variation aware system-level task allocation using stochastic ordering of delay distributions , 2008, 2008 IEEE/ACM International Conference on Computer-Aided Design.

[3]  Jan Madsen,et al.  Critical path driven cosynthesis for heterogeneous target architectures , 1997, CODES.

[4]  Diana Marculescu,et al.  Characterizing chip-multiprocessor variability-tolerance , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[5]  James Tschanz,et al.  Parameter variations and impact on circuits and microarchitecture , 2003, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[6]  Duane S. Boning,et al.  Analysis and decomposition of spatial variation in integrated circuit processes and devices , 1997 .

[7]  Vipin Kumar,et al.  Introduction to Data Mining, (First Edition) , 2005 .

[8]  Qiang Xu,et al.  Lifetime reliability-aware task allocation and scheduling for MPSoC platforms , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[9]  David Blaauw,et al.  Statistical Timing Analysis for Intra-Die Process Variations with Spatial Correlations , 2003, ICCAD 2003.

[10]  K. Mani Chandy,et al.  A comparison of list schedules for parallel processing systems , 1974, Commun. ACM.

[11]  Simon Haykin,et al.  Neural Networks and Learning Machines , 2010 .

[12]  Ladislau Bölöni,et al.  A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems , 2001, J. Parallel Distributed Comput..

[13]  S. Nassif,et al.  Delay variability: sources, impacts and trends , 2000, 2000 IEEE International Solid-State Circuits Conference. Digest of Technical Papers (Cat. No.00CH37056).

[14]  Gu-Yeon Wei,et al.  ReVIVaL: A Variation-Tolerant Architecture Using Voltage Interpolation and Variable Latency , 2008, 2008 International Symposium on Computer Architecture.

[15]  Peter Jaeckel,et al.  Monte Carlo methods in finance , 2002 .

[16]  Eric Fournié,et al.  Monte Carlo Methods in Finance , 2002 .

[17]  J. Torrellas,et al.  VARIUS: A Model of Process Variation and Resulting Timing Errors for Microarchitects , 2008, IEEE Transactions on Semiconductor Manufacturing.

[18]  Taewhan Kim,et al.  Timing variation-aware task scheduling and binding for MPSoC , 2009, 2009 Asia and South Pacific Design Automation Conference.

[19]  Xiaoxia Wu,et al.  Variability-driven module selection with joint design time optimization and post-silicon tuning , 2008, 2008 Asia and South Pacific Design Automation Conference.

[20]  Narayanan Vijaykrishnan,et al.  Variation-aware task allocation and scheduling for MPSoC , 2007, 2007 IEEE/ACM International Conference on Computer-Aided Design.

[21]  Wayne H. Wolf,et al.  TGFF: task graphs for free , 1998, Proceedings of the Sixth International Workshop on Hardware/Software Codesign. (CODES/CASHE'98).