Response Time Analysis for G-EDF and G-DM Scheduling of Sporadic DAG-Tasks with Arbitrary Deadline Andrea Parri, Alessandro Biondi and Mauro Marinoni Scuola Superiore Sant’Anna – Pisa, Italy 1
Introduction Multicore revolution New parallel programming models for expressing parallel computational activities Intel TBB 2
Introduction Big Data Novel programming models based on the Map-Reduce paradigm that relies on parallel processing 3
Introduction JUNIPER EU Project – supported this work Goal : enable application development with performance guarantees required for real-time exploitation of large streaming data sources and stored data; Case-study: applications for credit cards. 4
DAG-Task Task model for expressing parallel computations with precedence constraints A task is described with a Directed Acyclic Graph (DAG) X 𝑓 6 𝑓 1 𝑓 3 𝑓 5 𝑓 7 𝑓 2 𝑓 4 5
DAG-Task Vertex – sequential computation with WCET 𝑓 𝑗 𝑓 6 𝑓 1 𝑓 3 𝑓 5 𝑓 7 𝑓 2 𝑓 4 6
DAG-Task Edge – precedence constraint among two computational activities 𝑓 6 𝑓 1 𝑓 3 𝑓 5 𝑓 7 𝑓 2 𝑓 4 7
DAG-Task Note : this model allows to express parallelism 𝑓 6 𝑓 1 𝑓 3 𝑓 5 𝑓 7 𝑓 2 𝑓 4 8
DAG-Task Release of a DAG-Task 𝜐 𝑗 All the vertices are released simultaneously but it can be that not all of them are enabled due to precedence constrains 𝜐 𝑗 𝑓 6 𝑓 1 𝑓 3 𝑓 5 𝑓 7 𝑓 2 𝑓 4 9
Sporadic DAG-Task DAG-Task 𝜐 𝑗 Released with a minimum inter-arrival time 𝑼 𝒋 Each vertex must complete within a deadline 𝑬 𝒋 𝜐 𝑗 𝑓 6 𝑓 1 𝑓 3 𝑓 5 𝑓 7 𝑓 2 𝑓 4 10
Example 𝑓 1 𝑓 3 processor 1 𝑓 2 processor 2 8 4 0 2 6 𝑓 1 𝑓 1 2 𝑓 5 𝑓 2 2 𝑓 3 1 𝑓 2 𝑓 4 𝑓 4 1 𝑓 5 2 𝑓 6 𝑓 6 3 𝑓 3 11
Example 𝑓 1 𝑓 3 𝑓 4 processor 1 𝑓 2 processor 2 8 4 0 2 6 𝑓 1 𝑓 1 2 𝑓 5 𝑓 2 2 𝑓 3 1 𝑓 2 𝑓 4 𝑓 4 1 𝑓 5 2 𝑓 6 𝑓 6 3 𝑓 3 12
Example 𝑓 1 𝑓 3 𝑓 4 𝑓 5 processor 1 𝑓 2 𝑓 6 processor 2 8 4 0 2 6 𝑓 1 𝑓 1 2 𝑓 5 𝑓 2 2 𝑓 3 1 𝑓 2 𝑓 4 𝑓 4 1 𝑓 5 2 𝑓 6 𝑓 6 3 𝑓 3 13
Scheduling Problem Given a set of N sporadic DAG-Tasks; A scheduling algorithm (G-EDF or G-DM); A platform with m identical processors; verify if all deadlines are guaranteed. 14
State of The Art Existing schedulability analysis can be split in 3 categories: Based on resource augmentation (speed-up); (Baruah et al., Bonifaci et al., Nilissen et al.,…) Based on capacity augmentation; (Kim et al., Li et al., Lakshmanan et al., …) Based on Response-Time Analysis. (Maia et al., Chwa et al., Melani et al., …) 15
This Work Response-Time Analysis of Sporadic DAG-Tasks under both G-EDF and G-DM Contribution w.r.t. the state of the art: • Vertices-oriented analysis; • Tasks can have arbitrary deadlines ; • Vertices can have arbitrary utilization ; • Augmentation bounds proved for N=1. 16
Response-Time Analysis For each DAG-Task 𝜐 𝑗 , For each vertex 𝑤 of 𝜐 𝑗 , Each job of vertex 𝑤 must complete within a deadline 𝑬 𝒋 𝑓 𝑤 + 𝐽 𝑤 = 𝑺 𝒘 ≤ 𝐸 𝑗 Vertex WCET Worst-case scheduling interference 17
Response-Time Analysis For each DAG-Task 𝜐 𝑗 , For each vertex 𝑤 of 𝜐 𝑗 , Each job of vertex 𝑤 must complete within a deadline 𝑬 𝒋 𝑓 𝑤 + 𝐽 𝑤 = 𝑺 𝒘 ≤ 𝐸 𝑗 Not easy to compute for multiprocessor systems! 18
Response-Time Analysis Our approach : compute an upper-bound 𝐽 𝑤 of the interference 𝐽 𝑤 specific for each vertex 𝑤 , so obtaining a response-time upper-bound 𝑺 𝒘 𝑓 𝑤 + 𝐽 𝑤 = 𝑺 𝒘 ≤ 𝑓 𝑤 + 𝐽 𝑤 ⇒ 𝑆 𝑤 ≤ 𝑺 𝒘 19
Response-Time Analysis Main result of this work: we proved that 𝑆 𝑤 ≤ 𝑺 𝒘 1 + + + 𝑺 𝒘 = 𝓂 𝑤 𝑿 𝒘,𝒘 ′ 𝑺 𝒘 , 𝑍 𝑤 ′ − 𝓂 𝑤 𝑛 𝑤 ′ Critical path length: maximum sum of WCETs in a path ending with 𝑤 20
Critical Path Critical path length : maximum sum of WCETs in a path ending with 𝒘 8 1+4+2+4 = 11 𝒘 1 4 2 4 3 6 3+6+4 = 13 + = 13 𝓂 𝑤 21
Response-Time Analysis Main result : we proved that 𝑆 𝑤 ≤ 𝑺 𝒘 1 + + + 𝑺 𝒘 = 𝓂 𝑤 𝑿 𝒘,𝒘 ′ 𝑺 𝒘 , 𝑍 𝑤 ′ − 𝓂 𝑤 𝑛 𝑤 ′ Sum on all vertices 𝒘 ′ in the task-set 22
Response-Time Analysis Main result : we proved that 𝑆 𝑤 ≤ 𝑺 𝒘 1 + + + 𝑺 𝒘 = 𝓂 𝑤 𝑿 𝒘,𝒘 ′ 𝑺 𝒘 , 𝑍 𝑤 ′ − 𝓂 𝑤 𝑛 𝑤 ′ Upper-bound on the worst-case workload generated by 𝒘 ′ interfering with 𝒘 23
Worst-Case Workload Upper-bound on the worst-case workload generated by 𝒘 ′ interfering with 𝒘 𝑿 𝒘,𝒘 ′ 𝑺 𝒘 , 𝑍 𝑤 ′ Tentative response-time Response-time upper-bound of vertex 𝑤 , used in the Must be always greater than fixed-point iteration the response-time starting with 𝑺 𝒘 = 𝒇 𝒘 ( 𝑍 𝑤 ′ = 𝐸 𝑤 + 1 in the limit case) 24
Worst-Case Workload A generic vertex 𝒘 ′ interferes with 𝒘 released at 𝑢 If shifted more on the left the job of 𝒘 ′ will be completed when 𝒘 is released 𝑍 𝑤 ′ 𝒘′ time 𝑢 𝑢 − 𝑍 𝑤 ′ Release of a job of 𝒘 25
Worst-Case Workload A generic vertex 𝒘 ′ interferes with 𝒘 released at 𝑢 𝑍 𝑤 ′ + 𝑺 𝒘 𝑢 + 𝑺 𝒘 time 𝑢 𝑢 − 𝑍 𝑤 ′ In case of G-DM 𝑍 𝑤 ′ + 𝑺 𝒘 Interfering Null for vertices of 𝑓 𝑤 ′ workload 𝑈 𝑤 ′ lower-priority tasks 26
Worst-Case Workload A generic vertex 𝒘 ′ interferes with 𝒘 released at 𝑢 In case of G-EDF 𝐸 𝑤 ′ 𝒘′ time 𝑢 𝑢 + 𝐸 𝑤 𝑢 − 𝑍 𝑤 ′ Jobs of 𝒘 ′ released after 𝑢 + 𝐸 𝑤 − 𝐸 𝑤 ′ will not interfere with 𝒘 27
Worst-Case Workload A generic vertex 𝒘 ′ interferes with 𝒘 released at 𝑢 In case of G-EDF time 𝑢 𝑢 + 𝐸 𝑤 𝑢 + 𝐸 𝑤 − 𝐸 𝑤 ′ 𝑢 − 𝑍 𝑤 ′ Interfering 𝑍 𝑤 ′ + 𝑛𝑗𝑜{ 𝑺 𝒘 , 𝐸 𝑤 − 𝐸 𝑤 ′ } 𝑓 𝑤 ′ workload 𝑈 𝑤 ′ 28
Response-Time Analysis Successors in the same job of a DAG-task cannot interfere other tasks 𝒘 𝑓 6 𝑓 1 𝑓 3 𝑓 5 𝑓 7 𝑓 2 𝑓 4 29
Response-Time Analysis Main result : we proved that 𝑆 𝑤 ≤ 𝑺 𝒘 1 + + + 𝑺 𝒘 = 𝓂 𝑤 𝑿 𝒘,𝒘 ′ 𝑺 𝒘 , 𝑍 𝑤 ′ − 𝓂 𝑤 𝑛 𝑤 ′ 30
Schedulability Test Algorithm RTA(N) Maximum number of iterations 31
Schedulability Test Algorithm RTA(N) 1. We start with 𝑍 𝑤 = 𝐸 𝑤 + 1, ∀𝑤, i = 1 2. Compute the fixed-point of + + 1 + 𝑤 ′ 𝑿 𝒘,𝒘 ′ 𝑺 𝒘 , 𝑍 𝑤 ′ 𝑺 𝒘 = 𝓂 𝑤 − 𝓂 𝑤 𝑛 3. If 𝑺 𝒘 ≤ 𝑬 𝒘 return SCHEDULABLE 4. If 𝑍 𝑤 == 𝑺 𝒘 , ∀𝑤 OR i==N return NOT SCHEDULABLE 5. Else, update response-times as 𝑍 𝑤 = 𝑺 𝒘 , ∀𝑤 and go to step 2 𝑗 + + Pseudo-Polynomial Complexity 32
Polynomial-Time Schedulability Test If we set 𝑍 𝑤 = 𝐸 𝑤 + 1 and 𝑆 𝑤 = 𝐸 𝑤 it is possible to obtain a simple polynomial-time schedulability test without involving any iteration 1 + + + 𝑺 𝒘 = 𝓂 𝑤 𝑿 𝒘,𝒘 ′ 𝐸 𝑤 , 𝐸 𝑤 ′ + 1 − 𝓂 𝑤 𝑛 𝑤 ′ Polynomial Complexity 33
Augmentation Bound In case of a task-set composed of a single DAG- Task (N=1) we proved that Our test based on response-time analysis has Augmentation bound < 3 for G-EDF; Augmentation bound < 5 for G-DM. 34
Experimental Results The proposed schedulability tests have been evaluated by using synthetic workload libdag – DAG-Tasks generator and schedulability test. Soon publicly available online! Comparison against the test based on augmentation bound proposed in V. Bonifaci, A. Marchetti-Spaccamela, S. Stiller, and A. Wiese. “ Feasibility analysis in the sporadic DAG task model ”, In proc. of ECRTS 2013 To the best of our knowledge it is the only test dealing with arbitrary deadlines 35
Experimental Results Number N of external iterations in our algorithm The test of Bonifaci et al. 𝜀 is based on a workload approximation up to an 𝜗 -error with 2 −𝜀 36
Experimental Results Running times of the schedulability tests RTA test has running time lower of two orders of magnitude Exponential increase of the running time as the test precision increases (Intel Xeon @ 3.5 Ghz) 37
Experimental Results Take-away messages • RTA test outperforms the speed-up based test in all the tested configurations; • In some cases our 𝑉 = 10 polynomial-time test performs better than the speed-up based test that has pseudo- polynomial complexity 38
Recommend
More recommend