Post on 04-Apr-2015
Journée GoThA/ORDO
Ordonnancement de tâches
Temps-réel avec suspension
Frédéric RIDOUARD, frederic.ridouard@ensma.fr
http://www.lisi.ensma.fr/tempsreel/
Vendredi 28 janvier 2005
Laboratoire d’Informatique Scientifique et Industrielle
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
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
4F. Ridouard
Journée GoThA/ORDO
Exemple
Noyau temps-réel
Entrée/Sortie
Ope
ratio
n ex
tern
e
Opération finie
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
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.
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
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)
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).
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.
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 :
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 :
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 :
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 :
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
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.
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é
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.
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
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.
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
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
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.
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
25F. Ridouard
Journée GoThA/ORDO
EDF
Algorithme optimal
0 4s3s2ss
212
0 4s3s2ss
21 2
Augmentation de ressources
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
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)
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
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
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
31F. Ridouard
Journée GoThA/ORDO
Temps de réponse maximum
AlgorithmeOptimal
LLF
0 4K
2
0 4K
2 2*
LLF
LLFc
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
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.
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