Response modeling runtime schedulers for timing analysis of self-timed dataflow graphs

Constituent tasks of modern day Embedded Streaming Applications (ESAs), such as engine control systems, multimedia and software defined radios often exhibit execution behaviors that do not conform to conventional task models. ESAs consist of iterative, pipelined sequences of tasks that are conditioned by intra- and inter-iteration dependencies, and often have strict throughput and latency requirements. We model ESAs as dataflow graphs, where actors represent computational units, and directed edges represent communication channels between actors. Due to practical constraints like cost-effectiveness, power consumption and chip-area, multiple ESAs are run on a shared (multi-processor) platform. Thus rigorous timing analysis is required to verify whether individual ESAs meet their respective timing requirements.We look at response modeling, a compositional timing analysis approach wherein the local worst-case influence of runtime scheduling is represented within the constructs provided in dataflow. These local representations (called response models) can be composed together to construct a global understanding of an ESA's worst-case execution which is then used to verify whether its real-time requirements are met. This paper proposes a generic response modeling technique for runtime scheduling of ESAs. We focus on preemptive Fixed Priority Scheduling (FPS) but also demonstrate that we can apply our technique to a wide range of runtime schedulers. In our experiments, we present academic and industrial case-studies that highlight the effectiveness of our approach in the timing analysis of ESAs with unconventional execution behavior.

[1]  Rolf Ernst,et al.  System level performance analysis - the SymTA/S approach , 2005 .

[2]  Rolf Ernst,et al.  A recursive approach to end-to-end path latency computation in heterogeneous multiprocessor systems , 2009, CODES+ISSS '09.

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

[4]  Jan Vitek,et al.  Affine Data-Flow Graphs for the Synthesis of Hard Real-Time Applications , 2012, 2012 12th International Conference on Application of Concurrency to System Design.

[5]  Philip Wilmanns,et al.  Accuracy Improvement of Dataflow Analysis for Cyclic Stream Processing Applications Scheduled by Static Priority Preemptive Schedulers , 2014, 2014 17th Euromicro Conference on Digital System Design.

[6]  Lothar Thiele,et al.  Real-time calculus for scheduling hard real-time systems , 2000, 2000 IEEE International Symposium on Circuits and Systems. Emerging Technologies for the 21st Century. Proceedings (IEEE Cat No.00CH36353).

[7]  Orlando Moreira,et al.  A new data flow analysis model for TDM , 2012, EMSOFT '12.

[8]  Gerard J. M. Smit,et al.  Monotonicity and run-time scheduling , 2009, EMSOFT '09.

[9]  Yajun Ha,et al.  Iterative Probabilistic Performance Prediction for Multi-Application Multiprocessor Systems , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[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]  Sander Stuijk,et al.  Throughput Analysis of Synchronous Data Flow Graphs , 2006, Sixth International Conference on Application of Concurrency to System Design (ACSD'06).

[12]  Wang Yi,et al.  Cyclic dependencies in modular performance analysis , 2008, EMSOFT '08.

[13]  Alan Burns,et al.  Applying new scheduling theory to static priority pre-emptive scheduling , 1993, Softw. Eng. J..

[14]  Rolf Ernst,et al.  Optimizing performance analysis for synchronous dataflow graphs with shared resources , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[15]  Lothar Thiele,et al.  Modular performance analysis of cyclic dataflow graphs , 2009, EMSOFT '09.

[16]  Marc Geilen,et al.  Reduction techniques for Synchronous Dataflow graphs , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[17]  Gerard J. M. Smit,et al.  Modelling run-time arbitration by latency-rate servers in dataflow graphs , 2007, SCOPES '07.

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

[19]  Giorgio C. Buttazzo,et al.  Rate-adaptive tasks: Model, analysis, and design issues , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

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

[21]  Maarten Wiggers,et al.  Dataflow analysis for multiprocessor systems with non-starvation-free schedulers , 2013, M-SCOPES.

[22]  Orlando Moreira,et al.  Buffer allocation for real-time streaming on a multi-processor without back-pressure , 2014, 2014 IEEE 12th Symposium on Embedded Systems for Real-time Multimedia (ESTIMedia).

[23]  Orlando Moreira,et al.  Cyclo-Static Data Flow Model for TDM , 2014, 2014 14th International Conference on Application of Concurrency to System Design.

[24]  Marcel Verhoef,et al.  System architecture evaluation using modular performance analysis: a case study , 2006, International Journal on Software Tools for Technology Transfer.

[25]  Axel Jantsch,et al.  Mathematical formalisms for performance evaluation of networks-on-chip , 2013, CSUR.

[26]  Maarten Wiggers,et al.  Temporal analysis flow based on an enabling rate characterization for multi-rate applications executed on mpsocs with non-starvation-free schedulers , 2014, SCOPES.

[27]  John P. Lehoczky,et al.  Fixed priority scheduling of periodic task sets with arbitrary deadlines , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[28]  João Bastos,et al.  Analyzing preemptive fixed priority scheduling of data flow graphs , 2014, 2014 IEEE 12th Symposium on Embedded Systems for Real-time Multimedia (ESTIMedia).

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