Presentation is loading. Please wait.

Presentation is loading. Please wait.

Models for Deterministic Execution of Real-time Multiprocessor Applications Peter Poplavko, Dario Socci, Paraskevas Bourgos, Saddek Bensalem, Marius Bozga.

Similar presentations


Presentation on theme: "Models for Deterministic Execution of Real-time Multiprocessor Applications Peter Poplavko, Dario Socci, Paraskevas Bourgos, Saddek Bensalem, Marius Bozga."— Presentation transcript:

1 Models for Deterministic Execution of Real-time Multiprocessor Applications Peter Poplavko, Dario Socci, Paraskevas Bourgos, Saddek Bensalem, Marius Bozga VERIMAG lab (CNRS, University of Grenoble) Research supported by the European ICT Collaborative Project no. 288175 (CERTAINTY) and no. 332987 (ARROWHEAD).

2 I. Fixed Priority Process Networks - FPPN Motivation Model of computation KPN + synchronous events + priorities II. Approximately static subclass of FPPN Static scheduling Online scheduling policy Implementation and experiments Conclusions Models for Multiprocessor Applications Petro Poplavko / VERIMAG Grenoble111-Mar-15

3 Many industrial designs use fixed priority schedulability analysis tools, programming language support (ADA) and… deterministic communication Fixed Priority Process Networks Petro Poplavko / VERIMAG Grenoble211-Mar-15 ???? … under the condition of short enough execution times (not safe, but often holds for control apps) … valid restrictions on task set, e.g. Audsley’s approach for static task graphs [RTNS12]

4 Functionally deterministic models: Kahn process networks and dataflow streaming applications Synchronous languages reactive applications Fixed Priority Process Networks 11-Mar-15Petro Poplavko / VERIMAG Grenoble3 streaming + reactive? Reactive Process Networks (RPN) deterministic and timed behavior ? => add priorities and synchronous events

5 Functionally deterministic models: Kahn process networks and dataflow streaming applications Synchronous languages reactive applications Fixed Priority Process Networks 11-Mar-15Petro Poplavko / VERIMAG Grenoble4 FPPN is a combination streaming + reactive? Reactive Process Networks (RPN) deterministic and timed behavior ? => add priorities and synchronous events

6 Representative Example 11-Mar-15Petro Poplavko / VERIMAG Grenoble5 InputA 1 per 200ms FilterB 200ms CoefB ≤ 2 per 700ms functional priority (at each channel) FIFO sporadic process periodic process Input Channel FilterA 100ms OutputA 200ms NormA 200ms blackboard (shared variable) OutputB 100ms Output Channel 1 Output Channel 2 burst size and inter-arrival

7 FPPN: unexpected facts 11-Mar-15Petro Poplavko / VERIMAG Grenoble6

8 Relative order of execution 11-Mar-15Petro Poplavko / VERIMAG Grenoble7 precedence between communicating jobs: follow the arrival times simultaneous arrival => apply priority dynamically constructed precedence graph sporadic A sporadic B time A[1] (0,2000) A[2] (10,2010) B[1] (20,3020) B[3] (70,3070) A[3] (70,2070) B[2] (50,3050)

9 II. Approximately static FPPN 11-Mar-15Petro Poplavko / VERIMAG Grenoble8

10 FilterB[1] (0,200) OutputB[1] (0,100) InputA[1] (0,200) FilterA[1] (0,100) OutputA[1] (0,200) CoefB[1] (0,200) CoefB[2] (0,200) FilterA[2] (100,200) NormA[1] (0,200) OutputB[2] (100,200) p i [k i ] (A i, D i ) Restriction and static approximation 11-Mar-15Petro Poplavko / VERIMAG Grenoble9 FilterB 200ms CoefB ≤ 2 per700ms every sporadic process periodic server user period unique periodic “user” process

11 OutputB[1] M1M1 InputA[1]FilterA[1]OutputA[1] C O E F B [1] FilterA[2] OutputB[2] 100 ms -arrival 0 arrival M2M2 FilterB[1] 11-Mar-15Petro Poplavko / VERIMAG Grenoble10 …can be scheduled by List Scheduling easy, fast but sub-optimal (work conserving) better heuristics: topological permutation [PRORISC2000] force-directed scheduling 200 ms cycle C O E F B [2] N o r m A [2]

12 11-Mar-15Petro Poplavko / VERIMAG Grenoble11 Online policy illustrated by Petri Net wait 0+cyc wait 100+cyc cyc:= cyc+200 OutputB[1] M1M1 InputA[1]FilterA[1]OutputA[1] C O E F B [1] FilterA[2] OutputB[2] 100 ms -arrival 0 arrival M2M2 FilterB[1] 200 ms cycle C O E F B [2] N o r m A [2]

13 11-Mar-15Petro Poplavko / VERIMAG Grenoble12 wait 0+cyc wait 100+cyc Online policy and sporadic jobs cyc:= cyc+200 wait 0+cyc sporadic jobs up to 2 jobs/ period -200+cyc 0+cyc periodic server: and tokens ; ; ;

14 Utilization metric? (0,200, 25) (0,100, 25) (0,200, 25) (0,100, 25) (0,200, 25) (0,200, 5) (100,200, 25)(0,200, 5) (100,200, 25) 11-Mar-15Petro Poplavko / VERIMAG Grenoble13 p i [k i ] (A i, D i, C i ) p i [k i ] (A* i, D* i, C i ) 5 10 35 100 200 175 200 0

15 Implementation (public domain) 11-Mar-15Petro Poplavko / VERIMAG Grenoble14 Application (FPPN+C) Compile Application Compile Scheduling Static Schedule BIP Compiler Executable Application + Scheduler (BIP) BIP RTE

16 FFT2_0_1 generator FFT2_0_2 FFT2_0_3 FFT2_0_0 FFT2_1_1 FFT2_1_2 FFT2_1_3 FFT2_1_0 FFT2_2_1 FFT2_2_2 FFT2_2_3 FFT2_2_0 consumer 11-Mar-15Petro Poplavko / VERIMAG Grenoble15 Case Study1: FFT Transform Kalray MPPA 256 Platform Load* = 93%  120 % (with RT overhead)

17 11-Mar-15Petro Poplavko / VERIMAG Grenoble16 Case Study1: FFT Transform (on 2 cores) RT overhead

18 17 SensorInput 200ms AnemoConfig 2 per200ms GPSConfig 2 per200ms IRSConfig 2 per200ms DopplerConfig 2 per200ms HighFreqBCP 200ms LowFreqBCP 5000ms MagnDeclin 1600ms BCPConfig 2 per200ms Performance 1000ms MagnDeclinConfig 5 per1600ms PerformanceConfig 5 per1000ms AnemoData GPSData IRSData DopplerData PerformanceData BCP Data RM relative priority 11-Mar-15Petro Poplavko / VERIMAG Grenoble17 Flight Management System (Thales)

19 18 11-Mar-15Petro Poplavko / VERIMAG Grenoble18 Flight Management System (Thales) Linux Intel i7 3.6 GHz platform Static task graph: 812 nodes, 1977 edges Load* = 23%

20 19 11-Mar-15Petro Poplavko / VERIMAG Grenoble19 Related work FPPN combines certain concepts of synchronous and streaming languages - PRELUDE-SCHEDMCORE synchronous language and multi-core scheduling - OIL – streaming language with timing constraints - Algorithms for scheduling task graph for synchronous systems - Reactive Process Networks

21 20 11-Mar-15Petro Poplavko / VERIMAG Grenoble20 Conclusions FPPN – model of computation for reactive + streaming applications Generalizing the determinism of uniprocessor fixed- priority systems to multi-processors Approximately static subclass: task graph derivation scheduling algorithm scheduling policy and utilization metric two use cases

22 Thank you! 11-Mar-15Petro Poplavko / VERIMAG Grenoble21 InputA 200ms FilterB 200ms CoefB 2 per700ms OutputB 100ms functional priority (at each channel) FIFO spradic process periodic process Input Channel Output Channel 1


Download ppt "Models for Deterministic Execution of Real-time Multiprocessor Applications Peter Poplavko, Dario Socci, Paraskevas Bourgos, Saddek Bensalem, Marius Bozga."

Similar presentations


Ads by Google