Title: Coopration dans des ordonnancements multiorganisations
1Coopération dans des ordonnancements
multi-organisations
- Fanny Pascual
- Travail en collaboration avec Krzysztof Rzadca
et Denis Trystram - GOTHA, 12 octobre 2007
2Introduction
Plateformes dexécution haute performance
impliquent des entités distribuées
(organisations) qui ont leurs propres règles
locales/intérêts. Etudier la possibilité de
coopération pour un meilleur usage global du
système.
On montre que en coopérant il est toujours
possible davoir une bonne solution globale qui
satisfasse les intérêts individuels des
organisations.
3Plan
- Problème
- Contexte
- Motivations et limites
- Résolution
- Algorithme
- Analyse de lalgorithme
- Conclusion
4Contexte grille de calcul
m1 machines
Organisation O1
m2 machines
Organisation O3
Organisation O2
m3 machines
Grille de calcul collection de clusters
indépendants appartenant chacun à une
organisation.
5Applications tâches parallèles rigides
Des utilisateurs soumettent des applications
(tâches). Par exemple
Lutilisateur demande alors
Durée dexécution pi
Tâche i
de machines nécessaires qi
6Ordonnancer des tâches rigides
Ordonnancer des tâches rigides indépendantes
Problème de packing en 2D (strip packing).
Ordonnancement
Tâches
m
temps
7Les utilisateurs soumettent les tâches à leur
organisation.
O1
O3
O2
8Les organisations peuvent coopérer
O1
O3
O2
9Contraintes
Cmax(O3)
Ordonnancements locaux
Cmaxloc(O1)
O1
O1
Cmax(O1)
O2
O2
Cmax(O2)
O3
O3
Cmax(Ok) date de fin maximum des tâches de
Ok. Chaque organisation veut minimiser son
makespan.
10Définition du problème
- MOSP (Multi-Organisation Scheduling Problem)
- Données n organisations, chacune ayant mi
machines et des tâches locales. - But minimiser le makespan global OPT
max(Cmax(Ok)) sous la contrainte que aucun
makespan local nest augmenté. - Conséquence Si n1 (une organisation) m2
les tâches sont séquentielles (qi1) problème
(P2Cmax) qui est NP-difficile. - gt MOSP est NP-difficile.
11Coopérer peut substanciellement améliorer la
solution (1)
Solution non-cooperative chaque organisation
exécute ses tâches locales. Cette solution peut
être arbitrairement loin de loptimal.
Exemple
O1
O1
O2
O2
O3
O3
avec coopération
sans coopération
12Coopérer peut substanciellement améliorer la
solution (2)
Des algorithmes autres quun simple équilibrage
de charge sont possibles on peut ainsi obtenir
des solutions profitables pour toutes les
organisations.
2
1
O1
O1
2
O2
O2
1
avec coopération
sans coopération
13Limites de la coopération
Si on ne peut détériorer aucun makespan local,
alors loptimum global ne peut être atteint.
Ordonnancement local
Optimum global
2
1
O1
O1
1
1
1
2
2
2
O2
O2
2
2
1
2
O1
1
Meilleure solution qui naugmente pas Cmax(O1)
O2
2
2
14Limites de la coopération
- Borne inférieure sur le rapport dapproximation
3/2.
Ordonnancement local
Optimum global
2
1
O1
O1
1
1
1
2
2
2
O2
O2
2
2
1
2
O1
1
Meilleure solution qui naugmente pas Cmax(O1)
O2
2
2
15Plan
- Problème
- Contexte
- Motivations et limites
- Résolution
- Résultats préliminaires
- Algorithme
- Analyse de lalgorithme
- Conclusion
16Bornes inférieures
Soit OPT le makespan optimal. Bornes inférieures
de OPT
W ? (qi li) / ? mi surface totale des
tâches / nombre de machines
pmax max(pi) longueur de la plus grande
tâche.
17Ordonnancement sur un seul cluster
Algorithme de liste rapport dapprox.(2-1/m)
Resource constraint list algorithm (Graham
1975), revu dans IPDPS 2006 (Eyraud et al) avec
une preuve plus simple pour une contrainte.
- Ordonnancement HighestFirst ordonnance les
tâches par hauteur décroissante. Même garantie
théorique mais meilleur dun point de vue
pratique.
gt On suppose que chaque ordonnancement local est
un ordonnancement HighestFirst.
18Algorithme MOLBA(?)
(Multi-Organization Load Balancing Algorithm)
- Chaque organisation exécute ses tâches
localement avec Highest First. - Retirer les tâches qui commencent après ? W et
quiappartiennent à une organisation dont le
makespan est ?W pmax. (où 1 ? 3 dépend
de la version de lalgorithme). - Ordonnancer ces tâches en utilisant un algo. de
liste.
W
3W
W surface totale / ? mi
19Exemple (simulations)
O1
O2
O3
Ordonnancement local
O4
O5
O1
O2
O3
MOLBA(3)
O4
O5
O1
?
t
3W
3W
t
O2
O3
MOLBA load balancing
O4
O5
3W
t
20Rapports dapproximation
- Cas général MOLBA(3) est 4-approché.
- Cas particuliers
- W a pmax ou W a pmax algo. 2 2/(1a)
- n2 algorithme 3-approché
- Clusters identiques algo. 3.5- approché
- Petites tâches algo. 3-approché
- Tâches séquentielles algo. 2- (1/ ?mi) approché
21Analyse de performance un cluster avant MOLBA(?)
- Propriété 1 Tous les ordonnancements
HighestFirst ont la même structure - une zone
de forte utilisation - - une zone de faible utilisation
- Preuve
- Les grandes tâches (qigtm/2) sont ordonnancées à
la suite. - Aucune petite tâche (qi m/2) commence après la
fin de (I)
zone de faible utilisation (II)
zone de forte utilisation
(I) (plus de 50 des machines sont occupées)
t
22Analyse de performance un cluster avant MOLBA(?)
- Propriété 2 A la fin de lalgorithme, il y a au
moins un cluster dont la zone (II) commence avant
2W. - Preuve argument de surface.
zone de faible utilisation (II)
zone de forte utilisation
(I) (plus de 50 des machines sont occupées)
t
23Analyse de performance un cluster après MOLBA(?)
pmax
t1
t2
- Propriété 3 La longueur de la zone de faible
utilisation - est au plus pmax.
- Preuve par contradiction.
24MOLBA(3) est 4-approché
- Preuve. par labsurde
- hyp une tâche se termine après 4 OPT.
- commence après 3 OPT.
- Zone de faible utilisation/cluster lt pmax lt OPT .
- gtZone de haute utilisation par cluster gt 2 OPT
gt2W - gt Travail effectué au total gt travail disponible.
pmax
25Amélioration de lalgorithme
On rajoute une étape déquilibrage de charge.
O1
O2
O3
Ordonnancement local
O4
O5
O1
O2
O3
MOLBA(3)
O4
O5
O1
O2
O3
MOLBA(3) eq. de charge
O4
O5
26Expérimentations(MOLBA(2.5))
27Lien avec la théorie des jeux ?
Approche utilisée optimisation
combinatoire. En utilisant la théorie des jeux
? Joueurs organisations objectif min. leur
makespan Théorie des jeux coopérative suppose
que les joueurs (organisations) communiquent et
forment des coalitions. Théorie des jeux non
coopérative équilibre de Nash situation où
les joueurs nont pas intérêtà changer de
stratégie. Prix de la stabilité meilleur
équilibre de Nash/solution opt.
stratégie collaborer ou non obj. global min
makespan
28Conclusion
- Coopérer peut aider pour avoir une meilleure
performance globale, sans détériorer les
performances locales (pour le makespan). - Perspectives
- Améliorer les bornes
- Cadre online
- Objectifs individuels/global différents
- Co-scheduling (tâches de grandes taille
partagées entre plusieurs clusters). - Chaque organisation donne une limite de temps
quelle ne veut pas dépasser pour coopérer. -