Real-time partitioned scheduling on multi-core systems with local and global memories

Real-time task scheduling becomes even more challenging with the emerging of island-based multi-core architecture, where the local memory module of an island offers shorter access time than the global memory module does. With such a popular architecture design in mind, this paper exploits real-time task scheduling over island-based homogeneous cores with local and global memory pools. Joint considerations of real-time scheduling and memory allocation are presented to efficiently use the computing and memory resources. A polynomial-time algorithm with an asymptotic 4-approximation bound is proposed to minimize the number of needed islands to successfully schedule tasks. To evaluate the performance of the proposed algorithm, 82 benchmarks from the MRTC, MediaBench, UTDSP, NetBench, and DSPstone benchmark suites were profiled by a worst-case-execution-time analyzer aiT and included in the experiments.

[1]  Jian-Jia Chen,et al.  Resource Augmentation Bounds for Approximate Demand Bound Functions , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[2]  Sanjoy K. Baruah,et al.  The Partitioned EDF Scheduling of Sporadic Task Systems , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[3]  Hiroaki Takada,et al.  Partitioning and allocation of scratch-pad memory for priority-based preemptive multi-task systems , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[4]  Meikang Qiu,et al.  Optimal Data Allocation for Scratch-Pad Memory on Embedded Multi-core Systems , 2011, 2011 International Conference on Parallel Processing.

[5]  Jian-Jia Chen,et al.  Partitioned Packing and Scheduling for Sporadic Real-Time Tasks in Identical Multiprocessor Systems , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[6]  Ting Chen,et al.  WCET centric data allocation to scratchpad memory , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

[7]  Wendong Hu,et al.  NetBench: a benchmarking suite for network processors , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[8]  Rajeev Barua,et al.  Heterogeneous memory management for embedded systems , 2001, CASES '01.

[9]  Sanjoy K. Baruah,et al.  Partitioning sporadic task systems upon memory-constrained multiprocessors , 2013, TECS.

[10]  Mahmut T. Kandemir,et al.  Shared scratch-pad memory space management , 2006, 7th International Symposium on Quality Electronic Design (ISQED'06).

[11]  Miodrag Potkonjak,et al.  MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[12]  Michael R. Lowry,et al.  Fast, Interactive Worst-Case Execution Time Analysis With Back-Annotation , 2012, IEEE Transactions on Industrial Informatics.

[13]  Alan Burns,et al.  A survey of hard real-time scheduling for multiprocessor systems , 2011, CSUR.

[14]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[15]  Henrik Theiling,et al.  Fast and Precise WCET Prediction by Separated Cache and Path Analyses , 2000, Real-Time Systems.

[16]  Heiko Falk,et al.  Optimal static WCET-aware scratchpad allocation of program code , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[17]  Sanjoy K. Baruah,et al.  The partitioned scheduling of sporadic tasks according to static-priorities , 2006, 18th Euromicro Conference on Real-Time Systems (ECRTS'06).

[18]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.