edf-scrothvoss/slides/edf... · 2013. 11. 1. · edf-sc hedulabilit y of sync hronous p erio dic...
TRANSCRIPT
-
EDF-shedulability of synhronous perioditask systems is oNP-hardFriedrih Eisenbrand & Thomas Rothvo�Institute of MathematisEPFL, LausanneSODA'10
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n with
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time i
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline di
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline diI period pi
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline diI period piAssumptions:I di � pi (onstrained deadlines)
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline diI period piAssumptions:I di � pi (onstrained deadlines)I Task �i releases jobs of length i at z � pi and absolutedeadline z � pi + di for all z 2 N0 (synhronous)
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline diI period piAssumptions:I di � pi (onstrained deadlines)I Task �i releases jobs of length i at z � pi and absolutedeadline z � pi + di for all z 2 N0 (synhronous)(i; di; pi)
time
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline diI period piAssumptions:I di � pi (onstrained deadlines)I Task �i releases jobs of length i at z � pi and absolutedeadline z � pi + di for all z 2 N0 (synhronous)(i; di; pi)0 di
i1st job time
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline diI period piAssumptions:I di � pi (onstrained deadlines)I Task �i releases jobs of length i at z � pi and absolutedeadline z � pi + di for all z 2 N0 (synhronous)(i; di; pi)0 di
i1st job 1 � pi 1 � pi + dii2nd job time
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline diI period piAssumptions:I di � pi (onstrained deadlines)I Task �i releases jobs of length i at z � pi and absolutedeadline z � pi + di for all z 2 N0 (synhronous)(i; di; pi)0 di
i1st job 1 � pi 1 � pi + dii2nd job 2 � pi 2 � pi + dii3rd job time
-
Real-time ShedulingGiven: Periodi tasks �1; : : : ; �n withI running time iI (relative) deadline diI period piAssumptions:I di � pi (onstrained deadlines)I Task �i releases jobs of length i at z � pi and absolutedeadline z � pi + di for all z 2 N0 (synhronous)Consider:I Earliest-Deadline-First shedule (EDF)I uni-proessorI pre-emptiveQuestion: Will all jobs meet the deadline?
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
b b b time0 1 2 3 4 5 6 7 8 9 10 11 12
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
b b b time0 1 2 3 4 5 6 7 8 9 10 11 12
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
b b b time0 1 2 3 4 5 6 7 8 9 10 11 12
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
b b b time0 1 2 3 4 5 6 7 8 9 10 11 12
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
b b b time0 1 2 3 4 5 6 7 8 9 10 11 12
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
b b b time0 1 2 3 4 5 6 7 8 9 10 11 12
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
b b b time0 1 2 3 4 5 6 7 8 9 10 11 12
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
Deadline missb b b time0 1 2 3 4 5 6 7 8 9 10 11 12
-
Example 1 = 2;d1 = 3; p1 = 4
2 = 3d2 = 5; p2 = 6
Deadline missb b b time0 1 2 3 4 5 6 7 8 9 10 11 12
Theorem (Dertouzos '74)EDF is an optimum pre-emptive uni-proessor sheduling poliy.
-
Demand bound funtionObservation: In [0; Q℄ exatly jQ�dipi k+ 1 jobs of task �i haverelease time and deadline
-
Demand bound funtionObservation: In [0; Q℄ exatly jQ�dipi k+ 1 jobs of task �i haverelease time and deadlineDemand bound funtion: DBF(�i; Q) := �jQ�dipi k+ 1� � i
-
Demand bound funtionObservation: In [0; Q℄ exatly jQ�dipi k+ 1 jobs of task �i haverelease time and deadlineDemand bound funtion: DBF(�i; Q) := �jQ�dipi k+ 1� � iNeessary ondition: 8Q � 0 : nXi=1 DBF(�i; Q) � Q
-
Demand bound funtionObservation: In [0; Q℄ exatly jQ�dipi k+ 1 jobs of task �i haverelease time and deadlineDemand bound funtion: DBF(�i; Q) := �jQ�dipi k+ 1� � iNeessary ondition: 8Q � 0 : nXi=1 DBF(�i; Q) � Q051015
0 5 10 15 Q
-
Demand bound funtionObservation: In [0; Q℄ exatly jQ�dipi k+ 1 jobs of task �i haverelease time and deadlineDemand bound funtion: DBF(�i; Q) := �jQ�dipi k+ 1� � iNeessary ondition: 8Q � 0 : nXi=1 DBF(�i; Q) � Q051015
0 5 10 15 QDBF(�1; Q)
-
Demand bound funtionObservation: In [0; Q℄ exatly jQ�dipi k+ 1 jobs of task �i haverelease time and deadlineDemand bound funtion: DBF(�i; Q) := �jQ�dipi k+ 1� � iNeessary ondition: 8Q � 0 : nXi=1 DBF(�i; Q) � Q051015
0 5 10 15 QDBF(�1; Q)DBF(�2; Q)
-
Demand bound funtionObservation: In [0; Q℄ exatly jQ�dipi k+ 1 jobs of task �i haverelease time and deadlineDemand bound funtion: DBF(�i; Q) := �jQ�dipi k+ 1� � iNeessary ondition: 8Q � 0 : nXi=1 DBF(�i; Q) � Q051015
0 5 10 15 QDBF(�1; Q)DBF(�2; Q)DBF(f�1; �2g; Q)
-
EDF-shedulability onditionTheorem (Baruah, Mok & Rosier '90)Earliest-Deadline-First shedule is feasible ,8Q � 0 : DBF(f�1; : : : ; �ng; Q) � Q:
-
EDF-shedulability onditionTheorem (Baruah, Mok & Rosier '90)Earliest-Deadline-First shedule is feasible ,8Q � 0 : DBF(f�1; : : : ; �ng; Q) � Q:Theorem (Albers & Slomka '04)In time poly(n; 1=") one an distinguishI Feasible: 8Q � 0 : DBF (S; Q) � QI Very infeasible: 9Q � 0 : DBF (S; Q) > (1 + ") �Q
-
EDF-shedulability onditionTheorem (Baruah, Mok & Rosier '90)Earliest-Deadline-First shedule is feasible ,8Q � 0 : DBF(f�1; : : : ; �ng; Q) � Q:Theorem (Albers & Slomka '04)In time poly(n; 1=") one an distinguishI Feasible: 8Q � 0 : DBF (S; Q) � QI Very infeasible: 9Q � 0 : DBF (S; Q) > (1 + ") �QOpen problem: Complexity status?
-
EDF-shedulability onditionTheorem (Baruah, Mok & Rosier '90)Earliest-Deadline-First shedule is feasible ,8Q � 0 : DBF(f�1; : : : ; �ng; Q) � Q:Theorem (Albers & Slomka '04)In time poly(n; 1=") one an distinguishI Feasible: 8Q � 0 : DBF (S; Q) � QI Very infeasible: 9Q � 0 : DBF (S; Q) > (1 + ") �QOpen problem: Complexity status?TheoremTesting EDF-shedulability, i.e. deiding whether8Q � 0 : nXi=1 ��Q� dipi �+ 1� � i � Qis weakly oNP-hard.
-
Simultaneous Diophantine Approximation(SDA)Given:I �1; : : : ; �n 2 QI bound N 2 NI error bound " > 0
-
Simultaneous Diophantine Approximation(SDA)Given:I �1; : : : ; �n 2 QI bound N 2 NI error bound " > 0Deide: 9Q 2 f1; : : : ; Ng : maxi=1;:::;n �����i � ZQ ���� � "Q
-
Simultaneous Diophantine Approximation(SDA)Given:I �1; : : : ; �n 2 QI bound N 2 NI error bound " > 0Deide: 9Q 2 f1; : : : ; Ng : maxi=1;:::;n �����i � ZQ ���� � "Q, 9Q 2 f1; : : : ; Ng : maxi=1;:::;n jdQ�i �Q�ij � "
-
Simultaneous Diophantine Approximation(SDA)Given:I �1; : : : ; �n 2 QI bound N 2 NI error bound " > 0Deide: 9Q 2 f1; : : : ; Ng : maxi=1;:::;n �����i � ZQ ���� � "Q, 9Q 2 f1; : : : ; Ng : maxi=1;:::;n jdQ�i �Q�ij � "I NP-hard [Lagarias '85℄
-
Simultaneous Diophantine Approximation(SDA)Given:I �1; : : : ; �n 2 QI bound N 2 NI error bound " > 0Deide: 9Q 2 f1; : : : ; Ng : maxi=1;:::;n �����i � ZQ ���� � "Q, 9Q 2 f1; : : : ; Ng : maxi=1;:::;n jdQ�i �Q�ij � "I NP-hard [Lagarias '85℄I Gap version NP-hard [Rossner & Seifert '96,Chen & Meng '07℄I 2O(n)-apx (2-sided) via LLL-algo [Lagarias '85℄
-
Direted Diophantine Approximation (DDA)Theorem (Eisenbrand & R. - APPROX'09)Given �1; : : : ; �n, N , " > 0 it is NP-hard to distinguishI 9Q 2 fN=2; : : : ; Ng : maxi=1;:::;n jdQ�ie �Q�ij � "I �Q 2 f1; : : : ; n O(1)log log n �Ng : maxi=1;:::;n jdQ�ie �Q�ij � 2n � "
-
Some tehnialitiesTheoremGiven �1; : : : ; �n, N 2 N, " > 0 it is NP-hard to distinguishdgI 9Q 2 fN=2; : : : ; Ng : maxi=1;:::;n jdQ�ie �Q�ij � " nXiI �Q 2 f1; : : : ; n O(1)log log n �Ng : maxi=1;:::;n jdQ�ie �Q�ij � 2n � " nXi
-
Some tehnialitiesTheoremGiven �1; : : : ; �n, N 2 N, " > 0 it is NP-hard to distinguishdgI 9Q 2 fN=2; : : : ; Ng : nXi=1 jdQ�ie �Q�ij � "I �Q 2 f1; : : : ; n O(1)log log n �Ng : nXi=1 jdQ�ie �Q�ij � 2n=2 � "I Change norm k � k1 ! k � k1
-
Some tehnialitiesTheoremGiven �1; : : : ; �n, N 2 N, " > 0 it is NP-hard to distinguishdgI 9Q 2 fN=2; : : : ; Ng : nXi=1 jbQ�i �Q�ij � "I �Q 2 f1; : : : ; n O(1)log log n �Ng : nXi=1 jbQ�i �Q�ij � 2n=2 � "I Change norm k � k1 ! k � k1I d�e ! b� sine dxe � x = (�x)� b�x
-
Some tehnialitiesTheoremGiven �1; : : : ; �n > 0, N 2 N, " > 0 it is NP-hard todistinguishI 9Q 2 fN=2; : : : ; Ng : nXi=1 jbQ�i �Q�ij � "I �Q 2 f1; : : : ; n O(1)log log n �Ng : nXi=1 jbQ�i �Q�ij � 2n=2 � "I Change norm k � k1 ! k � k1I d�e ! b� sine dxe � x = (�x)� b�xI �i > 0 sine jbQ(�i + z) �Q(�i + z)j invariant for z 2 Z
-
Some tehnialitiesTheoremGiven �1; : : : ; �n > 0; w1; : : : ; wn, N 2 N, " > 0 it is NP-hardto distinguishI 9Q 2 [N=2; N ℄ : nXi=1wi jbQ�i �Q�ij � "I �Q 2 [1; n O(1)log log n �N ℄ : nXi=1wi jbQ�i �Q�ij � 2n=2 � "I Change norm k � k1 ! k � k1I d�e ! b� sine dxe � x = (�x)� b�xI �i > 0 sine jbQ(�i + z) �Q(�i + z)j invariant for z 2 ZI Q 2 Z! Q 2 Q+ : Admit weights wi. Add �0 := 1 with ahuge weight w0.
-
Redution (1)Given: DDA instane �1; : : : ; �n > 0; w1; : : : ; wn; N; " > 0
-
Redution (1)Given: DDA instane �1; : : : ; �n > 0; w1; : : : ; wn; N; " > 0De�ne: Task set S = f�0; : : : ; �ng s.t.I Yes: 9Q 2 [N=2; N ℄ :Pni=1 wi(Q�i � bQ�i) � ") S not EDF-shedulable (9Q � 0 : DBF(S; Q) > � �Q)I No: �Q 2 [N=2; 3N ℄ :Pni=1 wi(Q�i � bQ�i) � 3") S EDF-shedulable (8Q � 0 : DBF(S; Q) � � �Q)
-
Redution (1)Given: DDA instane �1; : : : ; �n > 0; w1; : : : ; wn; N; " > 0De�ne: Task set S = f�0; : : : ; �ng s.t.I Yes: 9Q 2 [N=2; N ℄ :Pni=1 wi(Q�i � bQ�i) � ") S not EDF-shedulable (9Q � 0 : DBF(S; Q) > � �Q)I No: �Q 2 [N=2; 3N ℄ :Pni=1 wi(Q�i � bQ�i) � 3") S EDF-shedulable (8Q � 0 : DBF(S; Q) � � �Q)Task system:�i = (i; di; pi) := �wi; 1�i ; 1�i� 8i = 1; : : : ; n�0 = (0; d0; p0) := (3";N=2;1)� := nXi=1 ipi| {z }=: U = utilization+ "N
-
Redution (2) Q � U � nXi=1 ��Q� dipi �+ 1� i
-
Redution (2) Q � U � nXi=1 ��Q� dipi �+ 1� i= nXi=1 �Qpi � �Qpi�� i
-
Redution (2) Q � U � nXi=1 ��Q� dipi �+ 1� i= nXi=1 �Qpi � �Qpi�� i= nXi=1 wi(Q�i � bQ�i)
-
Redution (2) Q � U � nXi=1 ��Q� dipi �+ 1� i= nXi=1 �Qpi � �Qpi�� i= nXi=1 wi(Q�i � bQ�i)HeneDBF(f�1; : : : ; �ng; Q)Q � U , approx. error small
-
Redution (3)DBF(f�1; : : : ; �ng; Q)Q QN=2 N
U
-
Redution (3)DBF(f�1; : : : ; �ng; Q)Q QN=2 N
U� = U + "N
-
Redution (3)
6 "N DBF(�0; Q)Q QN=2 NU� = U + "N
-
Redution (3)DBF(S; Q)Q QN=2 N
U� = U + "N
-
Redution (3)DBF(S; Q)Q QN=2 N
U� = U + "N
DBF(f�0; : : : ; �ng; Q)Q > � , Q = �(N) and apx error = O(")
-
Open problems
-
Open problemsKnown:I �rst deadline miss � 11� U � maxi=1;:::;n pi
-
Open problemsKnown:I �rst deadline miss � 11� U � maxi=1;:::;n piI pseudopolynomial time algorithm if U � 1� Æ
-
Open problemsKnown:I �rst deadline miss � 11� U � maxi=1;:::;n piI pseudopolynomial time algorithm if U � 1� ÆOpen Problem 1Is there a pseudopolynomial time algorithm for testingEDF-shedulability (even if U � 1)
-
Open problemsKnown:I �rst deadline miss � 11� U � maxi=1;:::;n piI pseudopolynomial time algorithm if U � 1� ÆOpen Problem 1Is there a pseudopolynomial time algorithm for testingEDF-shedulability (even if U � 1)Open Problem 2Is there for every Æ > 0 a polynomial time algorithm for testingEDF-shedulability if U � 1� Æ.
-
Open problemsKnown:I �rst deadline miss � 11� U � maxi=1;:::;n piI pseudopolynomial time algorithm if U � 1� ÆOpen Problem 1Is there a pseudopolynomial time algorithm for testingEDF-shedulability (even if U � 1)Open Problem 2Is there for every Æ > 0 a polynomial time algorithm for testingEDF-shedulability if U � 1� Æ.Thanks for your attention