Partitioning Parallel Applications on Multiprocessor Reservations

A full exploitation of the computational power available in a multi-core platform requires the software to be specified in terms of parallel execution flows. At the same time, modern embedded systems often consist of more parallel applications with timing requirements, concurrently executing on the same platform and sharing common resources. To prevent reciprocal interference among critical activities, a resource reservation mechanism is highly desired in the kernel to achieve temporal isolation. In this paper, we propose a general methodology for partitioning the total computing power available on a multi-core platform into a set of virtual processors, which provide a powerful abstraction to allocate applications independently of the physical platform. The application, described as a set of tasks with precedence relations expressed by a directed acyclic graph, is automatically partitioned into a set of sub graphs that are selected to minimize either the overall bandwidth consumption or the fragmentation of the partition expressed by the so-called “λ-factor” in uniform multiprocessor scheduling).

[1]  Tei-Wei Kuo,et al.  RTSS 2007: Preface , 2007, RTSS 2007.

[2]  Sanjoy K. Baruah,et al.  Generalized Multiframe Tasks , 1999, Real-Time Systems.

[3]  Bini Enrico,et al.  Selecting the Minimum Consumed Bandwidth of an EDF Task Set , 2009 .

[4]  Hennadiy Leontyev,et al.  A hierarchical multiprocessor bandwidth reservation scheme with timing guarantees , 2008, 2008 Euromicro Conference on Real-Time Systems.

[5]  Giuseppe Lipari,et al.  Resource partitioning among real-time applications , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..

[6]  Hesham El-Rewini,et al.  Scheduling Parallel Program Tasks onto Arbitrary Target Machines , 1990, J. Parallel Distributed Comput..

[7]  Aloysius K. Mok,et al.  A model of hierarchical real-time virtual resources , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[8]  Vivek Sarkar,et al.  Partitioning and Scheduling Parallel Programs for Multiprocessing , 1989 .

[9]  Stefan Savage,et al.  Processor Capacity Reserves for Multimedia Operating Systems , 1993 .

[10]  Maryline Chetto,et al.  Dynamic scheduling of real-time tasks under precedence constraints , 1990, Real-Time Systems.

[11]  Sanjoy K. Baruah,et al.  Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor , 1990, Real-Time Systems.

[12]  Insup Lee,et al.  Hierarchical Scheduling Framework for Virtual Clustering of Multiprocessors , 2008, 2008 Euromicro Conference on Real-Time Systems.

[13]  Sanjoy K. Baruah,et al.  On-line scheduling on uniform multiprocessors , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[14]  Sanjoy K. Baruah,et al.  The feasibility of general task systems with precedence constraints on multiprocessor platforms , 2008, Real-Time Systems.

[15]  Aloysius K. Mok,et al.  Resource partition for real-time systems , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[16]  Insup Lee,et al.  Periodic resource model for compositional real-time guarantees , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[17]  Ishfaq Ahmad,et al.  Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors , 1996, IEEE Trans. Parallel Distributed Syst..

[18]  Jos T. J. van Eijndhoven,et al.  Resource Reservations in Shared-Memory Multiprocessor SoCs , 2005 .

[19]  Giorgio C. Buttazzo,et al.  The Multi Supply Function Resource Abstraction for Multiprocessors : the Global EDF case ∗ , 2009 .

[20]  Insup Lee,et al.  Compositional Analysis Framework Using EDP Resource Models , 2007, 28th IEEE International Real-Time Systems Symposium (RTSS 2007).

[21]  Giorgio C. Buttazzo,et al.  Resource Reservation in Dynamic Real-Time Systems , 2004, Real-Time Systems.

[22]  Edward A. Lee,et al.  Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing , 1989, IEEE Transactions on Computers.

[23]  Tarek F. Abdelzaher,et al.  Delay Composition Algebra: A Reduction-Based Schedulability Algebra for Distributed Real-Time Systems , 2008, 2008 Real-Time Systems Symposium.

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

[25]  Emmanuel Grolleau,et al.  Feasibility Analysis of Non-Concrete Real-Time Transactions With EDF Assignment priority , 2008 .

[26]  Liliana Cucu-Grosjean,et al.  Integrating job parallelism in real-time scheduling theory , 2008, Inf. Process. Lett..

[27]  G. Rota The Number of Partitions of a Set , 1964 .