Upload
phungdung
View
225
Download
1
Embed Size (px)
Citation preview
Ordonnancement temps réel semi-partitionné
1
réel semi-partitionné
Laurent GeorgeINRIA/UPEC
Sommaire
� Introduction� Principes et modèles� Approche portions de WCETs
2
� Approche migration restreinte� Quelques résultats de simulation
� Taux de succès� Densité de migration
� Conclusion� Quelques ref. bibliographiques
Introduction� Ordonnancement partitionnéAvantages:
� Pas de coût de migration� Simple à mettre en œuvre
Inconvénient:� Peut conduire dans certaines configuration à n’utiliser que 50%
des ressources CPU
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
3
des ressources CPU� Global schedulingAvantage:
� Il existe des stratégies optimales permettant d’atteindre 100% d’utilisation des ressources CPU (sans prendre en compte le coût de migration)
Inconvénient:� Le nombre de migrations peut être important
Introduction (suite)Modèles de tâches: τ: jeu de n tâches périodiques/sporadiques
Pour toute tâche τi dans τ:� Ci son WCET� Ti sa période (inter-arrivée minimum dans le cas sporadique)� Di son échéance relative
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
4
On définit également:� α l’utilisation maximale d’une tâche:
� l’utilisation du processeur
� τ(k) l’ensemble des tâches affectées au processeur πk
Modèle de processeur:� M processeurs identiques {π1,…,πM} avec U≤M
∈ i
i
T
C
i ττ
max
∑∈
=ττ i
ii TCU /
Introduction (suite)Borne d’utilisation pour l’ordonnancement partitionné: 50%
Exemple: M processeurs, n=M+1 tâches τi avec Ti=1 et Ci=0.5+ε
� Puisque n>M, il existe un processeur où l’utilisation est 1+2ε� Aucun ordonnancement partitionné valide
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
5
� Aucun ordonnancement partitionné valide� L’utilisation U/m tend vers 50% lorsque et
Mais il suffit de découper une tâche en deux sous tâches de WCET/2 pour trouver un ordonnancement valide
Si l’on peut découper arbitrairement les WCETs, on peut dans certains cas atteindre 100% d’utilisation des processeurs
∞→m 0→ε
Introduction (suite) Notation:
Meilleures bornes connues sur l’utilisation U pour M processeurs(Anderson & al. 05)
Aucune Migration
Migration libre
Priorité fixe Niveau tâche 1
1+M 1+M
=
αβ
1
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
6
=> Réduire α permet d’améliorer l’ordonnançabilité des tâches en migration statique => Jouer sur l’inter-arrivée ou sur la durée des tâches: principe de l’ordonnancement semi-partitionné
Niveau tâche(cas RM)
Priorité fixe niveau job (cas EDF)
si αααα≤1/2:
Priorité dynamique(cas: Pfair) M
1
1
21 ++ M
2
1+M
2
1
1
+
+
β
βM
)1( −−≥ MMU α
1
1
+
+
β
βM
Principes et modèlesOrdonnancement semi-partitionné ?Objectifs:� Mieux maitriser le nombre de migration des jobs� Améliorer l’ordonnançabilité des systèmes partitionnés tout en
réduisant le nombre de migrations
Concept: degré de migration d’une tâche
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
7
Concept: degré de migration d’une tâche� Aucune migration: placement de la tâche selon une heuristique de
partitionnement� Migration statique
� Restreinte: motif statique de migration entre les jobs, un job est exécuté entièrement sur un processeur
� Par portions (job portioned migration): une tâche est découpée en portions, chaque portion est affectée séquentiellement à un processeur
� Migration libre: cas de l’ordonnancement global
Principes et modèles (suite)Ordonnancement semi-partitionné
Approches générales:� On place le maximum de tâches selon une heuristique
de partitionnement� L’ordonnancement semi-partitionné est envisagé lorsque
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
8
� L’ordonnancement semi-partitionné est envisagé lorsque qu’aucun partitionnement ne fonctionne pour une tâche
� On définit alors un motif de migration statique� De niveau job: découpage en portions (portioned scheduling)
Ex: => Portion1 sur S1, portion2 sur S2� Entre les jobs d’une tâche : migration restreinte (restricted
migration)Ex: => Job1 sur S1, job2 sur S2, job1 sur S1, job2 sur S2,….
=> L’approche semi-partitionnée domine l’approche partitionnée dans ces conditions
Principes et modèles (suite)
Tendances générales des ordonnancements semi-partitionnés:
� Placement (Next-Fit) des tâches migrantes sur deux processeurs
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
9
processeursTendance1:� Traiter les tâches migrantes avec une priorité plus élevéeTendance 2:� Découpage de l’échéance en échéances locales, sur un processeur,
priorité fonction de l’échéance locale
Principes et modèles (suite)Deux approches possibles pour le semi-partitionné:
� Ordonnancement semi-partitionné de portions de WCETs (portionned scheduling)� Remplissage au maximum du processeur sur lequel est placé
une tache migrante
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
10
� Remplissage au maximum du processeur sur lequel est placé une tache migrante
� Quand migrer ?
� Migration restreinte: exécution d’un job sur une seul processeur, migration des jobs selon un motif périodique� Quel motif ?� Au plus une migration par job
Approche portion de WCETs
Migration à une échéances locale:
Problèmes à résoudre:
� Quelle heuristique de répartition des échéances ?
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
11
� Quelle heuristique de répartition des échéances ?
� Quelle durée de portion pour une échéance locale ?
� Quand migrer ?
Quelques heuristiques de répartition des échéancesDi
(j) sur un processeur πjUne tâche τi est exécutée p≤M processeurs.
� p=2, Tâche migrante la plus prioritaire: et
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
)1()1(
ii CD =
)1()2(
iii CDD −=
12
� Equitable [EDF-WM] sur p processeurs:
� Échéance pondérée par l’utilisation locale [EDF-MLD-U]
p
DD ij
i =)(
ip
k
k
jj
i D
U
UD
∑=
=
1
)(
)(
)(
iii CDD −=
Quelques heuristiques de répartition des échéances (suite)
� Échéance locale égale à la durée maximale de la portion acceptable [EDF-(C=D)]
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
13
� Échéance minimale par réduction de l’échéance équitable et transfert de la marge d’échéance au processeur suivant [EDF-MLD-Dmin]
Approche portion de WCETsQuand migrer ?
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
14Après une durée ≥ au pire temps de réponse
Approche portion de WCETsAvantages de la migration à l’échéance locale
� Maintien d’une analyse d’ordonnançabilité indépendante sur l’ensemble des processeurs� Principe d’annulation de gigue dans les réseaux� Sinon approche holistique plus lourde
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
15
� Le motif d’activation des jobs reste inchangé sur l’ensemble des processeurs qui exécutent une tâche
Une CNS pour l’ordonnançabilité générique d’une tache τi executée sur p processeurs {π1,…πp} devient alors:
� et
� Les échéances locales de τi sont respectées
∑=
≥p
j
iji CC1
, ∑=
≤p
j
iji DD1
,
Approche portion de WCETsQuelle durée pour les portions ?
Approches générale:
� Minimiser le nombre de portions pour minimiser le nombre de migrations
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
16
nombre de migrations� Principe: « remplir » au maximum les processeurs� Sur un processeur, la durée d’une portion est telle que toute
durée supérieure conduit à un jeu de tâches non ordonnançable
� Pas d’exécution parallèle des portions
� Placement Next-Fit ou First-Fit des portions
Principes et modèles (suite)Semi-partitionnement: approche portion de WCETs
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
Modèle Nombre de proc.
Ordo tâche migrante /non migrante
Particularité
EKG 2 à M FP: prio max/ EDF Distinction entretâches lourdes et
17
Périodique,
Echéance
Implicite
tâches lourdes et légères
EDDP 2 EDF*, non indépendance entre processeurs garantir l’absence de parallélisme
Distinction entretâches lourdes et légères, échéance virtuelle tâche migrante
RMDP 2 RM*/RM (*même cause EDDP)
Inversion priorité si nécessaire
DP-PM Sporadique, échéancecontrainte
2 FP: prio max/ DM
Principes et modèles (suite)Semi-partitionnement: approche portion de WCETs
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
Modèle Nombre de proc.
Ordo tâchemigrante /non
migrante
Particularité
EDF-WM Sporadique, échéances contraintes
s=2 à M EDF*/EDF * Migration à échéance locale équitable Di/s
18
contraintes locale équitable Di/s
SPA2 Sporadique,échéances implicites
s=2 à M RM*/RM Worst-Fit. *Migration à échéances locales:
puis
PDMS_HPTS_DS
Périodique, échéance implicites
2 FP*/FP * Migration à échéance locale: puis idem SPA2. Split de la tâche la plus prioritaire.
ii DD =)1( ∑−
=
−=1
1
)()(s
j
j
ii
s
i RDD
)1()1(
ii CD =
Approche portion de WCETsEKG: [B. Andersson & al 06] – Cas de tâches périodiques
à échéance sur requête� Traitement différencié des tâches légères et lourdes
(Ci/Ti>SEP) avec:
SEP= si k<M et SEP=1 sinonk
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
19
SEP= si k<M et SEP=1 sinon
� Les tâches lourdes sont ordonnancées sur des processeur distincts => au plus M tâches lourdes
� Les tâches légères sont ordonnancées sur des groupes de k processeurs
� Affectation Next-Fit des tâches aux processeurs:� Affectation des tâches lourdes en premier sans migration
1+k
Approche portion de WCETsEKG (suite)� Les tâches à découper sont affectées à un groupe de k processeurs
ordonnançant des tâches légères (une tache migrante par groupe)� Une tâche migrante est découpée en k morceaux=> au plus k-1
migrations� Ex: k=2 (SEP=2/3)
π
Tâches non migrantes
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
20
� Principe de mirroring pour minimiser le nombre de migrations
π1
π2
Tâche migrante
π1
π2
Approche portion de WCETsEKG (suite)
� EKG permet d’atteindre une borne d’utilisation SEP (66% pour k=2, 100% pour k=M)
� Le nombre de préemptions est borné pour un groupe de k processeur
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
21
processeur
� Dans le scénario synchrone, le nombre de préemption divisé par le nombre d’activation dans [0,P] est borné par 2k (P=ppcm des périodes)
� Pour k=2, le nombre moyen de préemption pour un job est 4
Approche migration restreinteEDF-FM (Fixed or Migrating) [J. Anderson & al. 05]� Principe:
� Ordonnancement FP/EDF� Les tâches migrantes ont la plus haute priorité� Placement Next-Fit d’une tâche migrante sur deux processeurs
tels que l’utilisation sur les deux processeurs reste inférieurs ou égale à 1
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
22
égale à 1� Contrainte: α≤1/2
� Les échéances des taches migrantes sont garanties mais pas celles des tâches fixes
� Le retard des tâches fixes est borné
Approche migration restreinteEDF-FM (Fixed or Migrating) [Anderson & al. 05] (suite)� Définition du motif de migration des jobs:
� si,j: utilisation attribuée sur πj� fi,j: si,j/ui=xi,j/yi,j où xi,j et yi,j sont premiers entre eux
Motif: en moyenne xi,j jobs sur pj et yi,j jobs sur pj+1Le job job +1 est attribué au processeur:
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
23
i,j j i,j j+1� Le job jobi+1 est attribué au processeur:
� πj si avec ni,j le nombre de job attribués à πj
� πj+1 sinon
=
ji
ji
if
njob
,
,
Approche migration restreinteEDF-RRJM (Round Robin Job Migration) [George & al. 2011]� Une tâche ne pouvant pas être placée sur une seul
processeur est placée sur p processeur, 2≤p≤M
Motif: job1 sur π1, …, jobp sur πp, jobp+1 sur π1…
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
24
� EDF-RRJM procède par itérations successives en partant de p=2 jusqu’à M
� Sur un processeur exécutant τi, τi est activée avec une période pTi
� Une migration tous les Ti
Approche migration restreinteMotif Multiframe [Dorin & al. 2010] - EDF� Tâches sporadiques, à échéances contraintes� Construction d’un motif de migration suivant une
approche multiframe
� Motif plus général que celui de EDF-RRJM
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
25
� Motif plus général que celui de EDF-RRJM� Possibilité de réduire le nombre de migrations / EDF-
RRJM ( pas forcément une migration tous les Ti)� Longueur du motif fonction d’un paramètre K
Bornes d’utilisation du semi-partitionné – Migration statique
Migration restreinte Migration par portion
Taches fixes: Priorité fixe
Niveau tâche
PDMS_HPTS_DM: 65%
SPA2: 69.3%2
1+M1
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
26
Niveau tâche SPA2: 69.3%
Tâches fixes :priorité fixe niveau job
(cas EDF): Cas général
si α≤1/2:
EKG: de 65% à 100%(fonction de k)
Priorité dynamique ?
2)12(
1
−nn
)1( −−≥ MMU α
2
1+M
Résultats expérimentaux� Taux de succès (SR) pour 8 processeurs – Cas First-Fitdans [George & al 2011]
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
SR1: SR cas PartitionnéSR2: SR de l’heuristique
27
Résultats expérimentaux� Densité de migration: Somme pour toutes les tâches migrantes du
ratio : nombre de portions / période (dans [George & al 2011])
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
28
� Les approches portion de WCET produisent jusqu’à 2.69 fois plus de migrations que l’approche par migration restreinte EDF-RRJM
Conclusion� L’approche portion de WCETs a été bien
explorée, suppose une certaine liberté de découpage des WCETs
� L’approche par migration restreinte a été moins étudiée. Elle permet de bien exploiter un grand
Intro Principes Migr. Restreinte Simulations ConclusionMigr. Portions
étudiée. Elle permet de bien exploiter un grand nombre de processeurs (l’approche portion de WCETs peut être limitée par la granularité du temps)
� Ces approches permettent de mieux prendre en compte les coûts de préemption et de migration
29
Bibliographie[George & al. 2011][EDF-MLD-Dmin et RRJM] : un survey sur le semi-partitionnéL. George, P. Courbin, Y. Sorel, Journal of Systems Architecture, ISSN: 1383-7621,
Special issue on multiprocessor real-time scheduling. Ed. U.Devi and J.H. Anderson, Elsevier. 2011.
[DM-PM] S. Kato, N. Yamasaki, Semi-partitioned fixed-priority scheduling on multiprocessors, in: RTAS ’09: Proceedings of the 2009 15th IEEE Real-Time and Embedded Technology and Applications Symposium, IEEE Computer Society, Embedded Technology and Applications Symposium, IEEE Computer Society, Washington, DC, USA, 2009, pp. 23–32.
[Dorin & al. 2010] F. Dorin, P. Meumeu Yomsi, J. Goossens, P. Richard, Semi-PartitionedHard Real-Time Scheduling with Restricted Migrations upon Identical MultiprocessorPlatforms, Proc of Real-Time Systems and Networks (RTNS’2010), Toulouse, Nov; 2011, hal.inria.fr archive.
[EDDP] S. Kato, N. Yamasaki, Portioned edf-based scheduling on multiprocessors, in: EMSOFT ’08: Proceedings of the 8th ACM international conference on Embedded software, ACM, New York, NY, USA, 2008, pp. 139–148.
30
Bibliographie (2)[EDF-(C=D)] A. Burns, F. Zhang, R. Davis, Partitioned EDF Scheduling for
Multiprocessors using a C=D Scheme Proc of Real-Time Systems and Networks (RTNS’2010), Toulouse, Nov 2011, hal.inria.fr. archive.
[EDF-WM] S. Kato, N. Yamasaki, Y. Ishikawa, Semi-partitioned scheduling of sporadictask systems on multiprocessors, in: ECRTS ’09: Proceedings of the 2009 21st Euromicro Conference on Real-Time Systems, IEEE Computer Society, Washington, DC,USA, 2009, pp. 249–258.
[EKG] B. Andersson, E. Tovar, Multiprocessor scheduling with few preemptions, in: RTCSA ’06: Proceedings of the 12th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, IEEE Computer Society, Washington, DC, USA, 2006, pp. 322–334.
[SPA2] B. Andersson, K. Bletsas, S. Baruah, Scheduling Arbitrary-Deadline Sporadic Task Systems on Multiprocessors, in: In Proc. of the IEEE Real-Time Systems Symposium, Vol. pages 385-394, 2008.
[PDMS_HPTS_DM] K. Lakshmanan, R. Rajkumar, P. Lehoczky, Partitioned fixed-priority preemptive scheduling for multi-core processors, in: Proceedings of the Euromicro Conference on Real-Time Systems (ECRTS’09), 2009. 31