Presentation is loading. Please wait.

Presentation is loading. Please wait.

The 32nd IEEE Real-Time Systems Symposium Meeting End-to-End Deadlines through Distributed Local Deadline Assignment Shengyan Hong, Thidapat Chantem, X.

Similar presentations


Presentation on theme: "The 32nd IEEE Real-Time Systems Symposium Meeting End-to-End Deadlines through Distributed Local Deadline Assignment Shengyan Hong, Thidapat Chantem, X."— Presentation transcript:

1 The 32nd IEEE Real-Time Systems Symposium Meeting End-to-End Deadlines through Distributed Local Deadline Assignment Shengyan Hong, Thidapat Chantem, X. Sharon Hu Dept. of Computer Science and Engineering University of Notre Dame, USA 1

2 The 32nd IEEE Real-Time Systems Symposium 2 Outline  Introduction and problem statement  Related work and motivation  Proposed OLDA algorithm  Experimental results  Summary and future work

3 The 32nd IEEE Real-Time Systems Symposium 3 3 Systems of Interests  Distributed real-time systems  Jobs are executed on a sequence of processors  Jobs must complete by their end-to-end deadlines Chatterjee and J. Strosnider, ICDCS, 1995

4 The 32nd IEEE Real-Time Systems Symposium 4 4 Meeting End-to-End Deadlines  Resource competition among jobs on a single processor  Different jobs are executed on different sequences of processors  Workloads on different processors may be dissimilar  Need to adapt to dynamic changes, such as  job assignment changes due to processor failure  job deadline, period and execution time changes

5 The 32nd IEEE Real-Time Systems Symposium 5 What We Want to Achieve  Assign local deadlines to jobs on different processors  Employ EDF scheduling on each processor  Is done on-line, in a distributed fashion  Is invoked every time a new job comes to the system  Reserve enough time for jobs at later stages

6 The 32nd IEEE Real-Time Systems Symposium 6 Outline  Introduction and Problem statement  Related work and motivation  Proposed OLDA algorithm  Experimental results  Summary and future work

7 The 32nd IEEE Real-Time Systems Symposium 7 Related Work  Assign local deadlines to jobs  Jonsson et al. (J.RTS’02), Zhang et al. (RTSS’04), Buttazzo et al. (ECRTS’10), Serreli et al. (ETFA’10)  Decide the local deadline of a job according to the job’s path, execution time distribution, and local release time  Do not consider the workload contributed by other jobs on the processor  Cannot guarantee the job set schedulability  Assign priorities to jobs  Jayanchandran et al. (ECRTS’08, J.RTS’08)  Decide the priority of a job according to the job’s end-to-end deadline  Does not work well for high workload systems if jobs have different paths and workloads on processors vary significantly

8 The 32nd IEEE Real-Time Systems Symposium 8 Related Work (cont’d)  Schedulability analysis of tasks in distributed real- time system  Rahni et al. (RTNS’08), Serreli et al. (ECRTS’10)  Compute the time demand bound function of tasks scheduled by EDF  Palencia et al. (ECRTS’03), Hawkins et al. (RTSS’05), Jayachandran et al. (ECRTS’09)  Compute the worst case response times for the system under EDF or fixed priority  Time consuming and not suitable for on-line use

9 The 32nd IEEE Real-Time Systems Symposium 9 Motivational Example 930100N/A0V5V5 01100600V4V4 N/A100N/A100V3V3 N/A430N/A200V2V2 N/A70N/A100V1V1 E2E DeadlineExec. TimeE2E DeadlineExec. Time Job τ 2 Job τ 1 Processor Name

10 The 32nd IEEE Real-Time Systems Symposium 10 N/A Motivational Example BBW: By Buttazzo, et. al. (ECRTS’10) JA: By Jayanchandran, et. al. (ECRTS’08, J.RTS’08) 900 / 700 1070 / 1400N/A1100V4V4 800 / 600470 / 800797441V3V3 700 / 500370 / 700663331V2V2 70 / 70170 / 17090111V1V1 Job τ 2 Job τ 1 Job τ 2 Job τ 1 Processor Name Response Time BBW / JA Local Deadline Assignment BBW V5V5 930 N/A

11 The 32nd IEEE Real-Time Systems Symposium 11 Motivational Example 930430N/A0V5V5 01100600V4V4 N/A100N/A100V3V3 N/A430N/A200V2V2 N/A70N/A100V1V1 E2E DeadlineExec. TimeE2E DeadlineExec. Time Job τ 2 Job τ 1 Processor Name failed 430930

12 The 32nd IEEE Real-Time Systems Symposium 12 Motivational Example 900 / 7001170 / 14009301100V4V4 800 / 600470 / 800797441V3V3 700 / 500370 / 700663331V2V2 70 / 70170 / 17090111V1V1 Job τ 2 Job τ 1 Job τ 2 Job τ 1 Processor Name Response Time BBW / JA Local Deadline Assignment BBW failed Require an effective distributed algorithm that can handle such dynamic changes adaptively!

13 The 32nd IEEE Real-Time Systems Symposium 13 Outline  Introduction and Problem statement  Related work and motivation  Proposed OLDA algorithm  Experimental results  Summary and future work

14 The 32nd IEEE Real-Time Systems Symposium 14 Formulate an Optimization Problem  Objective function  Maximize time slack of each job on a processor, but difficult to capture  Employ an approximate objective function  Maximize the minimum time slack among all the jobs on the local processor  Constraints  Guarantee the schedulability of jobs on each local processor  Bound the local deadline of each job by  the earliest completion time of the job in the previous stage  the latest start time of the next stage

15 The 32nd IEEE Real-Time Systems Symposium 15 An Existing Feasibility Condition  Proposed by Chetto et al. (J.RTS’90)  Cannot be used to formulate a constraint due to deadlines being unknown Job set Ω(V x ) can be scheduled by EDF policy, if and only if, within any time interval L, for all the jobs whose release times and deadlines fall into L, sum of these jobs’ execution times C h ’s <=L. L

16 The 32nd IEEE Real-Time Systems Symposium 16 Modified Feasibility Condition  min{r j } max{d i } Job set Ω(V x ) can be scheduled by EDF policy, if and only if, for any job subset ω(V x ), and any L ϵ [min release time of jobs in ω(V x ), max deadline of jobs in ω(V x )], sum of these jobs’ execution times C h ’s <= L L

17 The 32nd IEEE Real-Time Systems Symposium 17 Requirements for OLDA Design  Need to be applicable on-line  Finding the optimal solution with low time complexity, but  Time consuming to explore exponential number of subsets in Ω (V x ) by using the modified condition  Solvers, such as, Loqo, is expensive  Need to be distributed  Avoid global synchronization overhead  Require information local to processor V x and the information known upon a job’s release

18 The 32nd IEEE Real-Time Systems Symposium 18 Basic Idea of OLDA (1)  Base job subset  The job subset having the latest “pseudo completion time”, i.e., min{r i } + sum{c i } is largest  Once the first job in this set gets executed, the processor is busy till all the jobs in the set are completed  All the jobs in the base job subset are executed after the completion of the jobs in the other job subsets

19 The 32nd IEEE Real-Time Systems Symposium 19 Example: Base Job Subset JobRelease timeExecution Time E2E Deadline τ1τ1 0235 τ2τ2 4242 τ3τ3 5239 τ4τ4 6135 0 1 2 34 5 10 78 τ3τ3 τ4τ4 t 6 9 τ2τ2 The base job subset  All job subsets: { τ 1 }, { τ 2 }, { τ 3 }, { τ 4 }, { τ 1, τ 2 }, { τ 1, τ 3 }, … { τ 3, τ 4 }, { τ 1, τ 2, τ 3 }, { τ 1, τ 2, τ 3 }, … { τ 2, τ 3, τ 4 }, { τ 1, τ 2, τ 3, τ 4 }  Search for base job subset: { τ 1, τ 2, τ 3, τ 4 }, { τ 2, τ 3, τ 4 }, { τ 3, τ 4 }, { τ 4 }  Pseudo completion times: 7 9 8 7

20 The 32nd IEEE Real-Time Systems Symposium 20 Basic Idea of OLDA (2)  Base job  The job with the largest local-deadline upper bound in the base job subset  UB of a job’s local deadline = E2E deadline – exec times on downstream processors  The deadline of the base job is set to the pseudo completion time of the job base subset, which is the optimal local deadline for this job

21 The 32nd IEEE Real-Time Systems Symposium 21 Example: Base Job JobRelease timeExecution TimeUB of local DL τ1τ1 0212 τ2τ2 4217 τ3τ3 5218 τ4τ4 6114 0 1 2 34 5 10 78 t 6 9 τ1τ1 τ3τ3 τ4τ4 τ2τ2 τ4τ4 τ2τ2 The base job is τ 3. Set τ 3 deadline to 9 τ3τ3

22 The 32nd IEEE Real-Time Systems Symposium 22 Properties of OLDA  In O(| Ω (V x )| 3 ) time, OLDA returns a set of local deadlines if and only if there exists a solution to the local-deadline optimization problem  The set of local deadlines returned by OLDA is optimal  OLDA is optimal on each processor, but not for the global system

23 The 32nd IEEE Real-Time Systems Symposium 23 Outline  Introduction and Problem statement  Related work and motivation  Proposed OLDA algorithm  Experimental results  Summary and future work

24 The 32nd IEEE Real-Time Systems Symposium 24 Back to the Motivational Example 900 / 700 / 9301170 / 1400 / 1100930 / 9301100 / 1100V4V4 800 / 600 / 830470 / 800 / 400797 / 830441 / 400V3V3 700 / 500 / 730370 / 700 / 300663 / 730331 / 300V2V2 70 / 70 / 170170 / 170 / 10090 / 170111 / 100V1V1 Job τ 2 Job τ 1 Job τ 2 Job τ 1 Processor Name Response Time BBW / JA / OLDA Local Deadline Assignment BBW / OLDA  Both BBW and JA fail to find a feasible solution, while OLDA solves the problem

25 The 32nd IEEE Real-Time Systems Symposium 25 Random Task Sets  100 task sets consisting of 50 tasks each for 10 different utilization levels (U level =400%,…,625%)  8 processors in the system and each task randomly passes through 4 to 6 stages  Task periods raged from 1000 to 10000 time units  Two randomly generated task sets  Set 1: processor loads are balanced  Set 2: processor loads are imbalanced

26 The 32nd IEEE Real-Time Systems Symposium 26 Feasible Solutions Found: Balanced Workloads  OLDA leads to 75% and 22% on average more feasible task sets than BBW and JA  OLDA can find on average 98% and 99% of the feasible task sets found by BBW and JA

27 The 32nd IEEE Real-Time Systems Symposium 27 Feasible Solutions Found: Imbalanced Workloads  OLDA leads to 57% and 46% on average more feasible task sets than BBW and JA  OLDA can find on average 88% and 99% of the feasible task sets found by BBW and JA

28 The 32nd IEEE Real-Time Systems Symposium 28 Average Drop Rate: Balanced Workloads  BBW and JA on average drop 3.25X and 2.25X more jobs than OLDA

29 The 32nd IEEE Real-Time Systems Symposium 29 Average Drop Rate: Imbalanced Workloads  BBW and JA on average drop 89% and 379% more jobs than OLDA

30 The 32nd IEEE Real-Time Systems Symposium 30 Computational Cost  Average number of cycles to process a job is 149 and 153 for the balanced and imbalanced workloads, respectively  Compared with BBW and JA  For balanced workloads, OLDA requires 1.53 and 2.30 times more cycles per task set than BBW and JA, respectively  For imbalanced workloads, OLDA requires 1.74 and 2.32 times more cycles per task set than BBW and JA, respectively  OLDA is more than 10,000 times faster than Loqo (a tool for solving smooth constrained optimization problems)

31 The 32nd IEEE Real-Time Systems Symposium 31 Summary and future work  Presented an on-line distributed local deadline assignment algorithm  Formulated an optimization problem to maximize the minimum time slack among all the jobs on the local processor  Devised a locally optimal distributed algorithm to solve the problem and prove its optimality  Experimental results show the strength of OLDA  Future work  Support transactions having more general execution sequences  Improve job prediction and dropping policies

32 The 32nd IEEE Real-Time Systems Symposium Thank You! 32

33 The 32nd IEEE Real-Time Systems Symposium 33 Outline  Introduction and Problem statement  Related work and motivation  Proposed OLDA algorithm  Experimental results  Summary and future work

34 The 32nd IEEE Real-Time Systems Symposium 34 Systems of Interests  Distributed real-time systems  Jobs are executed on a sequence of processors  Jobs must complete by their end-to-end deadlines Chatterjee and J. Strosnider, ICDCS, 1995

35 The 32nd IEEE Real-Time Systems Symposium 35 What We Want to Achieve  Assign local deadlines to jobs on different processors  Employ EDF scheduling on each processor  Is done on-line, in a distributed fashion  Is invoked every time a new job comes to the system  Reserve enough time for jobs at later stages τ1τ1 τ2τ2

36 The 32nd IEEE Real-Time Systems Symposium 36 Some Key Observations  Local deadlines should be bounded by  the earliest completion time of the job, and  the latest start time of the immediate next stage  Local deadlines should satisfy the modified feasibility condition  Reserve maximum time slack for each job to be executed in its downstream processors

37 The 32nd IEEE Real-Time Systems Symposium 37 A Flight Control System 20025000020140100NIP 100 0102015160010PAA 4505001001510291500FCP PFSVAPFGBSFCNVAH Task Name End2End Deadline Period Exec. Time  Flight control system  Introduced in Jayachandran et al. (ECRTS 2008)  3 periodic tasks and 8 heterogeneous processors and each task has an end-to-end deadline  Simulate the application for the time interval [0,54000ms]

38 The 32nd IEEE Real-Time Systems Symposium 38 Results by OLDA 0 / 0 / 3075 0 / 0 / 0200250NIP 0 / 180 / 072 0 / 0 / 0100 PAA 0 / 0 / 0120 0 / 0 / 0450500FCP Dropped Job Num. OLDA / JA / BBW E2E Dl. Period Dropped Job Num. OLDA / JA / BBW E2E Dl. Period Trans. Name  At some time interval, the periods and end-to-end deadlines of the three tasks are decreased  If the previous local deadline assignments by BBW are reused, 60 jobs of 1920 released jobs will miss deadlines  Applying OLDA, JA and BBW, OLDA leads to all jobs meeting the deadlines, while JA and BBW fail

39 The 32nd IEEE Real-Time Systems Symposium 39 Problem Formulation  Objective function  Maximize time slack of each job on a processor, but difficult to capture  Employ an approximate objective function  Constraints  Guarantee the schedulability of jobs on each local processor  Bound the local deadline of each job The upper bound of job J i,k(i,x)

40 The 32nd IEEE Real-Time Systems Symposium 40 Problem Formulation  Modified the existing feasibility condition proposed by Chetto et al. (Real-Time Systems 1990)  The existing condition can not be used to formulate a constraint  The problem can be solved by a standard mathematic solver  The new condition is still necessary and sufficient d i,k(i,x) r j,k(j,x) min{r j,k(j,x) }max{d i,k(i,x) } d i,k(i,x) is unknown a constant

41 The 32nd IEEE Real-Time Systems Symposium 41 Problem Formulation (1) s.t. (2) (3)

42 The 32nd IEEE Real-Time Systems Symposium 42 An example to show deficiencies of existing approaches Motivational Example Processor Name Job τ 1 Job τ 2 Exec. TimeE2E DeadlineExec. TimeE2E Deadline V1V1 100N/A70N/A V2V2 200N/A430N/A V3V3 100N/A100N/A V4V4 60011000N/A V5V5 0 430930

43 The 32nd IEEE Real-Time Systems Symposium 43 Why Not Loqo?  Loqo is a system for solving smooth constrained optimization problems  Apply Loqo in our problem  Formulate the optimization problem on the local processor each time a new job comes to the processor  Solve the problem  Disadvantages  Extremely slow (see experiment results)

44 The 32nd IEEE Real-Time Systems Symposium 44 Existing Feasibility Condition  Proposed by Chetto et al. (Real-Time Systems 1990)  Cannot be used to formulate a constraint d i,k(i,x) r j,k(j,x) d i,k(i,x) is unknown Job set Ω(V x ) can be scheduled by EDF policy if and only if J i,k(i,x), J j,k(j,x) ∈ ω(V x ), ??? r i,k(i,x) ≤ d i,k(i,x), How about using words instead of the complicated formula?? Use formula as backup.

45 The 32nd IEEE Real-Time Systems Symposium 45 Modified Feasibility Condition  Modified the existing feasibility condition  The problem can be solved by a standard mathematic solver Loqo, but it is time consuming  The new condition is still necessary and sufficient min{r j,k(j,x) }max{d i,k(i,x) } a constant Job setΩ(V x ) can be scheduled by EDF policy if and only if See my comment on previous page

46 The 32nd IEEE Real-Time Systems Symposium 46 System Model  Parameters  R i, D i : release time and relative deadline of J i  M i : the last stage index of J i on processor V x  C i,k(i,x) : the execution time of J i on processor V x  K (i,x) : the stage index of J i on processor V x  r i,k(i,x), d i,k(i,x) : the absolute release time and absolute local deadline of J i on processor V x  Ω(V x ): the job set on processor V x  Need these?? r i,1 =R i J i,1 r i,k(i,x) d i,k(i,x) d i,Mi =D i J i,k(i,x) J i,Mi

47 The 32nd IEEE Real-Time Systems Symposium 47 Main Steps in OLDA  UB of a job’s local deadline = E2E deadline – exec time on downstream processors  Drop the job in the base job subset having the largest remaining execution times on its downstream processors Select the base job J* whose local deadline upper bound is Max_upper_bound Compute the upper bound on local deadline of each job Select the base job subset ω*(V x ) and compute the completion time (= Max_Deadline of ω*(V x )) Max_upper_bound<Max_Deadline Drop a job Assign Max_Deadline to J* and remove J* from Ω(V x ) Ω(V x ) is empty Return local deadlines Yes No Yes No

48 The 32nd IEEE Real-Time Systems Symposium 48 Main Steps in OLDA  UB of a job’s local deadline = E2E deadline – exec time on downstream processors  Base job subset is the job subset having the latest busy interval  Base job = job with the largest local deadline UB in the base job subset  Drop the job in the base job subset having the largest remaining execution times on its downstream processors Select the base job J* whose local deadline upper bound is Max_upper_bound Compute the upper bound on local deadline of each job Select the base job subset ω*(V x ) and compute the completion time (= Max_Deadline of ω*(V x )) Max_upper_bound<Max_Deadline Drop a job Assign Max_Deadline to J* and remove J* from Ω(V x ) Ω(V x ) is empty Return local deadlines Yes No Yes No

49 The 32nd IEEE Real-Time Systems Symposium 49 Properties of OLDA  Local deadlines d * i ’s satisfy the constraints in the problem??  Local deadlines d * i ’s maximizes the objective function??  Once the first job in ω * (V x ) gets executed, the processor will never be idle till all the jobs in ω * (V x ) are completed  In O(| Ω (V x )|) time, OLDA returns a set of local deadlines if and only if there exists a solution to the optimization problem. Furthermore, the set of local deadlines returned by OLDA is optimal  OLDA is optimal on each processor, but not for the global system

50 The 32nd IEEE Real-Time Systems Symposium 50 Base Job Subset & Base Job JobRelease timeLocal deadlineExecution Time τ1τ1 032 τ2τ2 472 τ3τ3 582 τ4τ4 6101 idle 0 1 2 34 5 10 78 τ2τ2 τ4τ4 t 6 9 τ1τ1 τ2τ2 Local processor has no idle time when executing jobs τ 2, τ 3, and τ 4. In the example, the base job subset is { τ 2, τ 3, and τ 4 } and the base job is τ 4.


Download ppt "The 32nd IEEE Real-Time Systems Symposium Meeting End-to-End Deadlines through Distributed Local Deadline Assignment Shengyan Hong, Thidapat Chantem, X."

Similar presentations


Ads by Google