Managing latency in embedded streaming applications under hard-real-time scheduling

In this paper, we consider the problem of hard-real-time scheduling of embedded streaming applications, modeled using dataflow graphs, while minimizing the application latency. Recently, it has been shown that the actors in an acyclic Cyclo-Static Dataflow (CSDF) graph can be scheduled as a set of implicit-deadline periodic tasks. Such scheduling approach has been shown to yield the maximum achievable throughput for a large set of graphs, called matched I/O rates graphs. We show that scheduling the graph actors as implicit-deadline periodic tasks increases the latency significantly for a class of graphs called unbalanced graphs. To alleviate this problem, we propose a new task-set representation for the actors in which the actors are scheduled as a set of constrained-deadline periodic tasks. We prove that scheduling the actors as constrained-deadline periodic tasks delivers optimal throughput (i.e., rate) and latency for graphs with repetition vector equal to $\vec{1}$. Furthermore, we evaluate the constrained-deadline representation using a set of 19 real-life applications and show that it is capable of achieving the minimum achievable latency for more than 70% of the applications, and even if the application has a repetition vector not equal to $\vec{1}$. We show that choosing the task deadline involves a trade-off between the latency and the resources requirements. Finally, we propose a decision tree to assist the designer in choosing the appropriate real-time periodic task model for scheduling acyclic CSDF graphs.

[1]  Sanjoy K. Baruah,et al.  The partitioned multiprocessor scheduling of deadline-constrained sporadic task systems , 2006, IEEE Transactions on Computers.

[2]  Sander Stuijk,et al.  SDF^3: SDF For Free , 2006, Sixth International Conference on Application of Concurrency to System Design (ACSD'06).

[3]  Sander Stuijk,et al.  Latency Minimization for Synchronous Data Flow Graphs , 2007, 10th Euromicro Conference on Digital System Design Architectures, Methods and Tools (DSD 2007).

[4]  D.V. Anderson,et al.  Trends in multicore DSP platforms , 2009, IEEE Signal Processing Magazine.

[5]  Jean A. Peperstraete,et al.  Cycle-static dataflow , 1996, IEEE Trans. Signal Process..

[6]  Samarjit Chakraborty,et al.  Constant-Time Admission Control for Partitioned EDF , 2010, 2010 22nd Euromicro Conference on Real-Time Systems.

[7]  Orlando Moreira,et al.  Self-Timed Scheduling Analysis for Real-Time Applications , 2007, EURASIP J. Adv. Signal Process..

[8]  Orlando Moreira,et al.  Scheduling multiple independent hard-real-time jobs on a heterogeneous multiprocessor , 2007, EMSOFT '07.

[9]  Joseph Y.-T. Leung,et al.  Handbook of Real-Time and Embedded Systems , 2007 .

[10]  Todor Stefanov,et al.  Hard-real-time scheduling of data-dependent tasks in embedded streaming applications , 2011, 2011 Proceedings of the Ninth ACM International Conference on Embedded Software (EMSOFT).

[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]  Alan Burns,et al.  A survey of hard real-time scheduling for multiprocessor systems , 2011, CSUR.

[13]  Kevin Jeffay,et al.  On the management of latency in the synthesis of real-time signal processing systems from processing graphs , 1998 .

[14]  Shuvra S. Bhattacharyya,et al.  Embedded Multiprocessors: Scheduling and Synchronization , 2000 .

[15]  Frank Slomka,et al.  Efficient feasibility analysis for real-time systems with EDF scheduling , 2005, Design, Automation and Test in Europe.

[16]  UmaMaheswari Devi,et al.  An improved schedulability test for uniprocessor periodic task systems , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..

[17]  Sanjoy K. Baruah,et al.  Schedulability Analysis of Multiprocessor Sporadic Task Systems , 2007, Handbook of Real-Time and Embedded Systems.

[18]  Giuseppe Lipari,et al.  A new sufficient feasibility test for asynchronous real-time periodic task sets , 2004, Proceedings. 16th Euromicro Conference on Real-Time Systems, 2004. ECRTS 2004..

[19]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.