journée gotha/ordo ordonnancement de tâches temps-réel avec suspension frédéric ridouard,...

34
Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, [email protected] http://www.lisi.ensma.fr/tempsreel/ Vendredi 28 janvier 2005 Laboratoire d’Informatique Scientifique et Industrielle

Upload: eustacia-collignon

Post on 04-Apr-2015

106 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

Journée GoThA/ORDO

Ordonnancement de tâches

Temps-réel avec suspension

Frédéric RIDOUARD, [email protected]

http://www.lisi.ensma.fr/tempsreel/

Vendredi 28 janvier 2005

Laboratoire d’Informatique Scientifique et Industrielle

Page 2: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

2F. Ridouard

Journée GoThA/ORDO

Plan : Introduction

Exemple Système de tâches

Complexité du problème d’ordonnancement Calcul de complexité Anomalies d’ordonnancement

Algorithmes d’ordonnancement Analyse de compétitivité Respect des échéances

Résultats connus L’algorithme SRPTF et le système de tâches MAD EDF, RM & DM LLF Technique d’augmentation de ressources

Temps de réponse maximum EDF, RM & DM LLF

Conclusion

Page 3: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

3F. Ridouard

Journée GoThA/ORDO

Plan : Introduction

Exemple Système de tâches

Complexité du problème d’ordonnancement Calcul de complexité Anomalies d’ordonnancement

Algorithmes d’ordonnancement Analyse de compétitivité Respect des échéances

Résultats connus L’algorithme SRPTF et le système de tâches MAD EDF, RM & DM LLF Technique d’augmentation de ressources

Temps de réponse maximum EDF, RM & DM LLF

Conclusion

Page 4: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

4F. Ridouard

Journée GoThA/ORDO

Exemple

Noyau temps-réel

Entrée/Sortie

Ope

ratio

n ex

tern

e

Opération finie

Page 5: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

5F. Ridouard

Journée GoThA/ORDO

Système de tâches

ri Ci1 di

Xi

Ci2

Di

Ti

Périodique stricte Di Ti

Échéance sur requête Di = Ti

Ci = Ci1+ Ci2 Xi est la pire durée de suspension

Page 6: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

6F. Ridouard

Journée GoThA/ORDO

Tests de faisabilité :

Plusieurs tests de faisabilité sont connus pour l’ordonnancement de tâches à suspension : Un test basé sur le facteur d’utilisation du processeur. Des tests basés sur le calcul du pire temps de

réponse des tâches.

Mais notre but est de déterminer l’efficacité de quelques algorithmes classiques en ordonnançant des tâches à suspension.

Page 7: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

7F. Ridouard

Journée GoThA/ORDO

Plan : Introduction

Exemple Système de tâches

Complexité du problème d’ordonnancement Calcul de complexité Anomalies d’ordonnancement

Algorithmes d’ordonnancement Analyse de compétitivité Respect des échéances

Résultats connus L’algorithme SRPTF et le système de tâches MAD EDF, RM & DM LLF Technique d’augmentation de ressources

Temps de réponse maximum EDF, RM & DM LLF

Conclusion

Page 8: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

8F. Ridouard

Journée GoThA/ORDO

Calcul de complexité

Résultats connus : L’ordonnancement de tâches périodiques strictes et à

départ simultané est un problème NP -difficile au sens fort.

(P. Richard, ECRTS’03)

Le problème d’ordonnancement de tâches périodiques à échéance sur requête et départ simultané est un problème NP -difficile au sens fort. (F. Ridouard et al. RTSS’04)

Page 9: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

9F. Ridouard

Journée GoThA/ORDO

Calcul de complexité

Définition : Un algorithme d’ordonnancement est dit « universel »

si cet algorithme effectue le choix de la prochaine tâche à ordonnancer en temps polynomial.

Un tel algorithme ne peut pas exister pour l’ordonnancement de tâches à suspension (sauf si P = NP).

Page 10: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

10F. Ridouard

Journée GoThA/ORDO

Anomalies d’ordonnancement sous EDF

Définition : Réduire la durée d’exécution ou de suspension d’une

des tâches rend l’instance non ordonnançable.

Résultats connus : EDF est robuste pour l’ordonnancement de tâches

indépendantes sans suspension.

Page 11: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

11F. Ridouard

Journée GoThA/ORDO

Anomalies d’ordonnancement sous EDF

2

1

3

0 6

5 9

7 10

05 10

Ordonnancement de I par EDF :

Système de tâches I :

Page 12: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

12F. Ridouard

Journée GoThA/ORDO

Anomalies d’ordonnancement sous EDF

05 10

1

0 6

2

3

5 9

7 10 Ordonnancement de I par EDF :

Système de tâches I :

Page 13: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

13F. Ridouard

Journée GoThA/ORDO

2

1

3

0 6

5 9

7 10

05 10

Anomalies d’ordonnancement sous EDF

Ordonnancement de I par EDF :

Système de tâches I :

Page 14: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

14F. Ridouard

Journée GoThA/ORDO

2

1

3

0 6

5 9

7 10

05 10

Anomalies d’ordonnancement sous EDF

Ordonnancement de I par EDF :

Système de tâches I :

Page 15: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

15F. Ridouard

Journée GoThA/ORDO

Plan : Introduction

Exemple Système de tâches

Complexité du problème d’ordonnancement Calcul de complexité Anomalies d’ordonnancement

Algorithmes d’ordonnancement Analyse de compétitivité Respect des échéances

Résultats connus L’algorithme SRPTF et le système de tâches MAD EDF, RM & DM LLF Technique d’augmentation de ressources

Temps de réponse maximum EDF, RM & DM LLF

Conclusion

Page 16: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

16F. Ridouard

Journée GoThA/ORDO

Analyse de compétitivé

Comparaison : Algorithme en-ligne (non clairvoyant) Algorithme hors-ligne (optimal, clairvoyant) :

l’adversaire

Principe : Un bon adversaire définit les instances de problème

pour que l’algorithme en-ligne atteigne sa pire performance.

Page 17: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

17F. Ridouard

Journée GoThA/ORDO

Ratio de compétitivité (Maximisation) cA :A: performance atteinte par l’algorithme en-

ligne A.*: performance atteinte par l’adversaire

cA

0 cA 1.

I

IAanyI

*sup

cA=1, alors A est un algorithme optimal

Analyse de compétitivité

Page 18: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

18F. Ridouard

Journée GoThA/ORDO

Résultats connus (Respect des échéances) :

Aucun algorithme d’ordonnancement en-ligne n’est compétitif

Mais des résultats positifs sont connus dans différents cas particuliers :

Monotonic Absolute Deadline (MAD) : Si ri rj alors di dj

Shortest Remaining Processing Time First (SRPTF): SRPTF est un algorithme d’ordonnancement en-ligne qui

alloue le processeur à chaque instant à la tâche ayant le plus petit temps processeur restant.

Pour les systèmes MAD, SRPTF est compétitif.

Page 19: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

19F. Ridouard

Journée GoThA/ORDO

SRPTF et le système MAD

Pour les systèmes de tâches à suspension MAD même avec un faible facteur d’utilisation, l’algorithme en-ligne SRPTF n’est pas compétitif pour maximiser le nombre de tâches respectant leurs échéances. Une tâche sans suspension. N tâches avec:

Faibles et égales durées d’exécution Longues périodes de suspension

Page 20: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

20F. Ridouard

Journée GoThA/ORDO

SRPTF et le système MAD

K

……

0 K

……

SRPTF

AlgorithmeOptimal

,EDF, DM,et RM

0

1

0

2

n

1

0

2

n

0*

SRPTFSRPTFc

EDF, DM et RM assignent les priorités aux tâches exactement comme SRPTF le fait.

Page 21: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

21F. Ridouard

Journée GoThA/ORDO

Non compétitivité de LLF

LLF n’est pas compétitif pour maximiser le nombre de tâches à suspension respectant leurs échéances. N tâches avec :

Temps processeur de chaque sous-tâche égal à trois.

Longues périodes de suspension

Page 22: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

22F. Ridouard

Journée GoThA/ORDO

Non compétitivité de LLF

LLF

AlgorithmeOptimal

0 K

0 K

… … … … … …

… …

0

2

1

n

2

1

n

0*

LLF

LLFc

Page 23: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

23F. Ridouard

Journée GoThA/ORDO

Augmentation de ressources

Comparaison : Algorithme hors-ligne sur un processeur Algorithme en-ligne sur une machine s fois plus rapide

Résultats connus : S’il existe un ordonnancement possible, alors EDF

définira un ordonnancement possible sur une machine deux fois (s=2) plus rapide.

Page 24: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

24F. Ridouard

Journée GoThA/ORDO

Allouer plus de ressources à EDF n’améliore pas ses performances quand les tâches peuvent se suspendre au plus une fois. Preuve par l’absurde : Soit s, un entier tel que s>1. 1 :

2 :0 4s3s2ss

22

0 4s3s2ss

1

Augmentation de ressources

Page 25: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

25F. Ridouard

Journée GoThA/ORDO

EDF

Algorithme optimal

0 4s3s2ss

212

0 4s3s2ss

21 2

Augmentation de ressources

Page 26: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

26F. Ridouard

Journée GoThA/ORDO

Plan : Introduction

Exemple Système de tâches

Complexité du problème d’ordonnancement Calcul de complexité Anomalies d’ordonnancement

Algorithmes d’ordonnancement Analyse de compétitivité Respect des échéances

Résultats connus L’algorithme SRPTF et le système de tâches MAD EDF, RM & DM LLF Technique d’augmentation de ressources

Temps de réponse maximum EDF, RM & DM LLF

Conclusion

Page 27: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

27F. Ridouard

Journée GoThA/ORDO

Ratio de compétitivité (Minimisation) cA :A: performance atteinte par l’algorithme en-

ligne A.*: performance atteinte par l’adversaire

cA

cA 1

I

IAanyI

*sup

cA=1, alors A est un algorithme optimal

Analyse de compétitivité (bis)

Page 28: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

28F. Ridouard

Journée GoThA/ORDO

Temps de réponse maximum

EDF est au mieux 2-compétitif pour minimiser le temps de réponse maximum.

1 :

2 :

0

K

4K

0 4K-1

Page 29: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

29F. Ridouard

Journée GoThA/ORDO

Temps de réponse maximum

AlgorithmeOptimal

EDF, DM,et RM

0 4K

2

0 4K

2 2*

EDF

EDFc

Page 30: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

30F. Ridouard

Journée GoThA/ORDO

Temps de réponse maximum

LLF est au mieux 2-compétitive pour minimiser le temps de réponse maximum.

1 :

2 :

0

K

4K

0 2K+2

Page 31: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

31F. Ridouard

Journée GoThA/ORDO

Temps de réponse maximum

AlgorithmeOptimal

LLF

0 4K

2

0 4K

2 2*

LLF

LLFc

Page 32: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

32F. Ridouard

Journée GoThA/ORDO

Plan : Introduction

Exemple Système de tâches

Complexité du problème d’ordonnancement Calcul de complexité Anomalies d’ordonnancement

Algorithmes d’ordonnancement Analyse de compétitivité Résultats connus L’algorithme SRPTF et le système de tâches MAD EDF, RM & DM LLF Technique d’augmentation de ressources

Conclusion

Page 33: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

33F. Ridouard

Journée GoThA/ORDO

Conclusion Résultats négatifs pour l’ordonnancement de

tâche à suspension : Ordonnancer des tâches à suspension, à départ simultané et à

échéance sur requête est un problème NP-difficile au sens fort. Présence sous EDF d’anomalies d’ordonnancement. Les algorithmes classiques d’ordonnancement ne peuvent pas

ordonnancer certaines instances même avec un facteur d’utilisation du processeur arbitrairement faible alors qu’il existe un ordonnancement hors-ligne trivial faisable.

L’allocation d’un processeur plus rapide n’améliore pas les performances d’EDF pour ordonnancer des tâches à suspension.

Les algorithmes classiques d’ordonnancement que sont EDF, RM, DM et LLF sont au mieux 2-compétitif pour minimiser le temps de reponse maximum.

Page 34: Journée GoThA/ORDO Ordonnancement de tâches Temps-réel avec suspension Frédéric RIDOUARD, frederic.ridouard@ensma.fr

34F. Ridouard

Journée GoThA/ORDO

Conclusion

Futurs travaux :Essayer de définir des solutions pratiques pour

l’ordonnancement de système de tâches avec suspensions.

Considérer des tâches dépendantes Ressources partagées Contraintes de précédence