Response Time Analysis of Synchronous Data Flow Programs on a Many-Core Processor

In this paper we introduce a response time analysis technique for Synchronous Data Flow programs mapped to multiple parallel dependent tasks running on a compute cluster of the Kalray MPPA-256 many-core processor. The analysis we derive computes a set of response times and release dates that respect the constraints in the task dependency graph. We extend the Multicore Response Time Analysis (MRTA) framework by deriving a mathematical model of the multi-level bus arbitration policy used by the MPPA. Further, we refine the analysis to account for the release dates and response times of co-runners, and the use of memory banks. Further improvements to the precision of the analysis were achieved by splitting each task into two sequential phases, with the majority of the memory accesses in the first phase, and a small number of writes in the second phase. Our experimental evaluation focused on an avionics case study. Using measurements from the Kalray MPPA-256 as a basis, we show that the new analysis leads to response times that are a factor of 4.15 smaller for this application, than the default approach of assuming worst-case interference on each memory access.

[1]  Lothar Thiele,et al.  Worst case delay analysis for memory interference in multicore systems , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[2]  Soonhoi Ha,et al.  Conservative modeling of shared resource contention for dependent tasks in partitioned multi-core systems , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[3]  Pascal Raymond,et al.  The synchronous data flow programming language LUSTRE , 1991, Proc. IEEE.

[4]  Pascal Sainrat,et al.  OTAWA: An Open Toolbox for Adaptive WCET Analysis , 2010, SEUS.

[5]  Robert I. Davis,et al.  Improved cache related pre-emption delay aware response time analysis for fixed priority pre-emptive systems , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[6]  Giorgio C. Buttazzo,et al.  Memory-processor co-scheduling in fixed priority systems , 2015, RTNS.

[7]  Benoît Dupont de Dinechin,et al.  Time-critical computing on a single-chip massively parallel processor , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[8]  Vincent Nélis,et al.  A framework for memory contention analysis in multi-core platforms , 2015, Real-Time Systems.

[9]  Patrick Meumeu Yomsi,et al.  The Variability of Application Execution Times on a Multi-Core Platform , 2016, WCET.

[11]  Francisco J. Cazorla,et al.  On the evaluation of the impact of shared resources in multithreaded COTS processors in time-critical environments , 2012, TACO.

[12]  Claire Pagetti,et al.  The ROSACE case study: From Simulink specification to multi/many-core execution , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[13]  Benoît Dupont de Dinechin,et al.  Guaranteed Services of the NoC of a Manycore Processor , 2014, NoCArc '14.

[14]  QuiñonesEduardo,et al.  On the evaluation of the impact of shared resources in multithreaded COTS processors in time-critical environments , 2012 .

[15]  Gérard Berry SCADE: Synchronous Design and Validation of Embedded Control Software , 2007 .

[16]  Henrik Theiling,et al.  Multi-core Interference-Sensitive WCET Analysis Leveraging Runtime Resource Capacity Enforcement , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[17]  Prahladavaradan Sampath,et al.  Next Generation Design and Verification Methodologies for Distributed Embedded Control Systems , 2007 .

[18]  Lothar Thiele,et al.  Mixed-criticality scheduling on cluster-based manycores with shared communication and storage resources , 2015, Real-Time Systems.

[19]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[20]  Rodolfo Pellizzoni,et al.  A formal approach to the WCRT analysis of multicore systems with memory contention under phase-structured task sets , 2014, Real-Time Systems.

[21]  Leandro Soares Indrusiak,et al.  A generic and compositional framework for multicore response time analysis , 2015, RTNS.

[22]  Heechul Yun,et al.  Taming Non-Blocking Caches to Improve Isolation in Multicore Real-Time Systems , 2016, 2016 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[23]  Thomas Carle,et al.  From Dataflow Specification to Multiprocessor Partitioned Time-triggered Real-time Implementation , 2015, Leibniz Trans. Embed. Syst..

[24]  Claire Pagetti,et al.  Mapping a multi-rate synchronous language to a many-core processor , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[25]  Lothar Thiele,et al.  Timing Analysis for TDMA Arbitration in Resource Sharing Systems , 2010, 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium.