400 likes | 714 Views
Ordonnancement de tâches. Temps- réel avec suspension. Vendredi 28 janvier 2005. http://www.lisi.ensma.fr/tempsreel/. L aboratoire d’ I nformatique S cientifique et I ndustrielle. Frédéric RIDOUARD, frederic.ridouard@ensma.fr. Plan :. Introduction Exemple Système de tâches
E N D
Ordonnancement de tâches Temps-réel avec suspension Vendredi 28 janvier 2005 http://www.lisi.ensma.fr/tempsreel/ Laboratoire d’Informatique Scientifique et Industrielle Frédéric RIDOUARD, frederic.ridouard@ensma.fr
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
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
Operation externe Opération finie Exemple Entrée/Sortie Noyau temps-réel
Di Ti • Di= Ti Périodique stricte Échéance sur requête Ti Di Xi Système de tâches ri Ci1 Ci2 di • Ci = Ci1+ Ci2 • Xiest la pire durée de suspension
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.
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
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)
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).
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.
Anomalies d’ordonnancement sous EDF • Système de tâches I : 1 0 6 2 5 9 3 7 10 • Ordonnancement de I par EDF : 0 5 10
1 0 6 2 5 9 3 7 10 Anomalies d’ordonnancement sous EDF • Système de tâches I : • Ordonnancement de I par EDF : 0 5 10
Anomalies d’ordonnancement sous EDF • Système de tâches I : 1 0 6 2 5 9 3 7 10 • Ordonnancement de I par EDF : 0 5 10
Anomalies d’ordonnancement sous EDF • Système de tâches I : 1 0 6 2 5 9 3 7 10 • Ordonnancement de I par EDF : 0 5 10
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
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.
cA=1, alors A est un algorithme optimal Analyse de compétitivité • Ratio de compétitivité (Maximisation) cA : • A: performance atteinte par l’algorithme en-ligne A. • *: performance atteinte par l’adversaire • cA • 0 cA 1.
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.
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
… … … … SRPTF et le système MAD 0 1 2 SRPTF , EDF, DM, et RM n 0 K 0 1 2 Algorithme Optimal EDF, DM et RM assignent les priorités aux tâches exactement comme SRPTF le fait. n 0 K
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
… … … … … … … … Non compétitivité de LLF 1 2 LLF n 0 0 K 1 2 Algorithme Optimal n 0 K
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.
2 1 2 0 s 2s 3s 4s 0 s 2s 3s 4s Augmentation de ressources • 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 :
2 1 2 1 2 2 Augmentation de ressources EDF 0 s 2s 3s 4s Algorithme optimal 0 s 2s 3s 4s
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
cA=1, alors A est un algorithme optimal Analyse de compétitivité (bis) • Ratio de compétitivité (Minimisation) cA : • A: performance atteinte par l’algorithme en-ligne A. • *: performance atteinte par l’adversaire • cA • cA 1
K 0 4K 4K-1 0 Temps de réponse maximum • EDF est au mieux 2-compétitif pour minimiser le temps de réponse maximum. • 1 : • 2 :
2 2 Temps de réponse maximum EDF, DM, et RM 0 4K Algorithme Optimal 0 4K
K 0 4K 2K+2 0 Temps de réponse maximum • LLF est au mieux 2-compétitive pour minimiser le temps de réponse maximum. • 1 : • 2 :
2 2 Temps de réponse maximum LLF 0 4K Algorithme Optimal 0 4K
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
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.
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