Académique Documents
Professionnel Documents
Culture Documents
Ordonnancement en rgime
permanent en quit proportionnelle
sur une plate-forme en structure
darbre
Rmi Vannier
Juin 2006
Abstract
Multiple applications that execute on an heterogeneous platform compete for CPU and network resources. In this report, our model is a
tree-shaped platform, on which we designed an algorithm aiming at
scheduling multiple task collections in steady-state. Task collections
are sets of identical and independant tasks. We show a distributed algorithm (thus suited for large-scale platforms) which maintains proportionnal fairness between the applications while maximizing the possibilities of the platform. Our theory uses Lagrangian Optimization and
distributed gradient methods.
Keywords : steady-state, distributed computing, scheduling, multiple
applications, resource sharing, proportionnal fairness
Rsum
Quand plusieurs applications sexcutent sur une plate-forme htrogne, elles entrent en concurrence pour le partage des ressources de
calcul et de communication. Nous nous sommes intresss un modle
de plate-forme ayant une structure darbre, et nous avons cherch tablir un ordonnancement en rgime permanent dapplications modlises par des collections de tches identiques et indpendantes. Nous
montrons que lon peut concevoir un algorithme dordonnancement
distribu et adapt des plates-formes de grande chelle qui maintient
une quit proportionnelle entre ces applications tout en maximisant
lutilisation de la plate-forme. Notre modle fait notamment intervenir
des techniques doptimisation Lagrangienne et de gradient distribu.
Mots-cls : Rgime permanent, calcul distribu, ordonnancement, cadre
multi-applicatif, partage de resources, quit proportionnelle
Introduction
Les besoins en puissance de calcul vont en saccroissant dans une multitude de domaines (simulation et modlisation, traitement du signal, dimages,
fouille de donnes, tl-immersion, etc.) et le paralllisme est une tentative
de rponse toujours dactualit. Les grilles de PC utilisent la puissance de
calcul vacante de nombreux ordinateurs personnels mis disposition par
des volontaires pour excuter des applications de grande taille ou fournir
de grands espaces de stockage. Depuis prs dune dcennie ces systmes
ont sans doute constitu parmi les plus grands systmes distribus de lInternet, agrgeant des puissances de calcul considrables pour une fraction
du cot dun super-calculateur.
Ces plates-formes rsultant de la mise en commun dun grand nombre
de ressources, elles sont gnralement sollicites par plusieurs utilisateurs
simultanment. Ceux-ci rentrent donc en concurrence pour le partage des
ressources. Il est donc ncessaire, ds la conception des algorithmes dordonnancement, dy introduire une certaine forme dquit entre les demandes, un compromis entre utilisation optimale des ressources et quit
entre les utilisateurs.
Pour modliser ce problme, nous nous sommes intresss lordonnancement en rgime permanent de plusieurs applications qui entrent en
concurrence pour les ressources de calcul et de communication sur une
plate-forme htrogne en structure darbre. Les applications sont composes dun grand nombre de tches identiques et indpendantes, dont
les donnes dentre sont lorigine contenues par la racine de larbre (le
matre), qui les distribue aux autre nuds de larbre (les esclaves). Ce modle de collections de tches trouve sa justification dans un grand nombre de
systmes existants. Par exemple, BOINC [6] est un ordonnanceur centralis
qui distribue les tches dapplications de ce type telles que SETI@home,
ClimatePrediction.NET ou Einstein@Home.
Lordonnancement en rgime permanent diffre sur un certain nombre
de points de lordonnancement classique, o lon essaie de placer dans un
temps minimal (ou selon un autre critre) un certain nombre de tches
a priori trs diffrentes et ventuellement lies par des dpendances. Les
tches tant identiques et indpendantes au sein dune collection, il ne
sagit pas de dterminer pour chaque tche son allocation et son ordonnancement, mais plutt de trouver les proportions dexcution de chaque application sur chaque ressource de calcul. Le problme de lquit en rgime
permanent a dj t abord dans [3], en particulier pour lquit MAXMIN.
Dans ce rapport, nous montrons que lquit proportionnelle est plus
adapte ce cadre de travail et quelle mne des algorithmes distribus
et efficaces.
Dans la section 2, nous prsentons le modle de plate-forme, dapplications et nous introduisons les grandeurs fondamentales de lordonnancement en rgime permanent. Nous discutons galement brivement de
diffrentes quits possibles et justifions le choix de lquit proportionnelle. Enfin, nous formalisons prcisment le problme doptimisation auquel nous nous intressons par la suite. Dans la section 3, nous prsentons
un certain nombre de techniques doptimisation permettant de proposer
un algorithme compltement distribu pour raliser une quit proportionnelle entre les diffrentes applications. La section 4 prsente la mise
en uvre de cet algorithme et son valuation exprimentale par simulation. Nous concluons ce rapport en donnant en section 5 des perspectives
ouvertes par nos travaux.
Modlisation
Nos travaux tant une extension de ceux commencs dans [3], nous utilisons sensiblement le mme modle. Nous prciserons occasionnellement
les variations apporter lorsque des extensions sont possibles.
2.1
Plate-forme
Les plates-formes de calcul que nous utilisons sont supposes tre organises sous forme darbre (F IG . 1) o les nuds sont les ressources de
calcul et les artes sont les liens entre les ressources de calcul. La racine de
larbre, appele matre, et note M , ne travaille pas, et est la source des donnes dentre des tches. Les N autres nuds sont appels esclaves (nots
P1 , P2 , . . . , PN ) et excutent les tches. La plate-forme tant htrogne, un
esclave Pi est caractris par :
sa capacit de calcul Wi
la bande passante de son lien entrant (lien entre Pi et son pre Pp(i) ) :
Bi
Dans la suite de ce document et dans les expriences ralises, les applications partent donc toutes dun seul matre. Cependant, nous verrons plus
tard que rien dans les quations que nous crirons ninterdit de considrer
plusieurs matres sur une plate-forme gnrale, chacun responsable dune
tche, si ce nest la complexification des notations. Nous en resterons donc,
par souci de clart de la prsentation, un modle prement arborescent.
Nous utilisons un modle de cot linaire. Il faut donc X/Bi units de
temps pour transfrer un message de taille X de Pp(i) Pi . Nous ignorons
les affinits entre tches et processeurs (mais cela pourrait aisment tre rajout au modle). Nous supposons pour simplifier la prsentation que les
besoins de calculs dune tche peuvent tre exprims comme un nombre
doprations en virgule flottante et que le processeur Pi peut traiter Wi op-
Pmaster
B1
B3
B2
P3
P1
P2
W1
B4
B5
P4
P5
W2 W3
B6
P6
W6
W4
W5
F IG . 1 Modle de plate-forme
rations en virgule flottante par seconde (indpendamment de lapplication
quil traite).
Nous utilisons un modle de recouvrement complet des calculs et des
communications et nous nous concentrons, la diffrence de [3], sur un
modle de communications multi-port. En effet, les travaux de [3] se basent
sur le modle 1-port o chaque processeur ne peut communiquer un instant donn quavec un seul de ses voisins, contrairement au multi-port, o
ces communications peuvent tre simultanes.
Le modle 1-port, qui peut sembler plus raliste que le modle multiport, induit un certain nombre de difficults la fois thoriques et pratiques [4]. Pour atteindre le rgime permanent optimal avec ce modle, il
est ncessaire de se reposer sur une organisation complexe des communications laide de dcompositions en couplages. Ce type dorganisation
peut potentiellement induire des synchronisations entre des processeurs
trs loigns les uns des autres1 . Cest pourquoi nous nous basons sur le
modle multi-port qui ne souffre pas de ces inconvnients. Il nest cependant pas raliste denvisager quun processeur puisse communiquer en parallle avec une infinit de processeurs.
Un modle plus raliste que ces deux modles est le modle multi-port
born [10], dans lequel un noeud peut communiquer avec ses voisins simultanment, mais avec une borne sur la bande passante totale. La figure F IG . 2
montre que lon peut facilement simuler le modle multi-port born avec
le modle multi-port. Si lon souhaite mettre une borne sur le dbit total
sortant de A, il suffit de rajouter un nud A0 de capacit de calcul nulle
entre A et (B, C), et un lien A A0 dont la bande passante est la borne
que lon souhaite. En rgime permanent, ces deux modles sont quivalents. Par souci de clart, nous nous concentrerons donc par la suite sur le
1
A
BAmax
A
BAB
BAC
A0
BAB
BAC
A1
A2
A3
F IG . 3 Collections de tches
modle multi-port.
2.2
Applications
On considre un ensemble A de K applications A1 , . . . , AK indpendantes (i.e. pas de contrainte de prcdence entre tches). Chaque application est une collection de tches toutes identiques, et en nombre infini,
dont le matre possde lorigine les donnes dentre quil distribuera aux
esclaves. La figure F IG . 3 montre une reprsentation de ces collections de
tches.
Les tches de lapplication k sont caractrises par :
un cot de calcul wk .
un cot de communication bk (la taille des donnes dentre).
Nous faisons lhypothse classique que les donnes de retour (i.e. les rsultats de lexcution de la tche) sont de taille ngligeables. En effet, en
rgime permanent, il est possible dagrger les fichiers de sortie avec les
fichiers dentre.
2.3
Lnorme avantage du rgime permanent par rapport lordonnancement classique rside dans le fait que lon ne considre que des valeurs
moyennes. Les variables que nous cherchons dterminer sont ce que nous
(k)
(k)
appellerons dornavant les taux, nots i , avec i R :
(k)
Il nest pas vident a priori que la connaissance des proportions dapplication que chaque ressource de calcul devra excuter permette de reconstruire un ordonnancement valide (i.e. qui respecte les contraintes de
prcdence telles que lexcution dune tche sur une ressource de calcul
ne peut commencer que quand celle-ci a reu les donnes de cette tche ).
On peut montrer [3] que si les taux respectent les contraintes de ressources
que nous dtailleront par la suite, il est possible de reconstruire un ordonnancement valide atteignant exactement le dbit correspondant. Les tudes
exprimentales de [3] montrent quil est galement possible en pratique
dordonnancer efficacement de faon distribue les tches des applications
partir des taux dutilisation des ressources. Un calcul centralis des taux
pouvant rapidement devenir irralisable pour de grandes plates-formes,
nous nous intressons au calcul distribu de ces taux, ce qui permet dobtenir in fine un algorithme compltement dcentralis pour le problme de
lordonnancement en rgime permanent.
2.4
X (k)
P
:
i w(k) 6 Wi
(Contraintes de calcul)
kA
X X (k)
j tel que kA
iM j
(k)
i P, k A : i > 0
(Contraintes de faisabilit)
Les contraintes de calcul expriment que, pendant un temps unitaire, la ressource Pi ne peut pas excuter plus de Wi units de calcul. De mme, les
contraintes de communication font intervenir lensemble des liens qui sparent le matre de lesclave qui excute la tche. Enfin, les contraintes de
faisabilit assurent simplement quaucune ressource nexcute de quantit
ngative de tches !
Ces quations dfinissent un polydre dans un espace 2N K dimensions appel par la suite domaine ralisable. Il sagit maintenant de dterminer dans ce domaine quelle est la solution optimale.
5
D2
D2
D2
D1
(a) Dbit total
D1
(b) Max-min
D1
(c) Proportionnelle
2.5
2.5.1
Types dquit
La fonction objectif maximiser doit reflter notre volont dimplmenter une certaine forme dquit entre les diffrentes applications. La thse
de Corinne Touati [12] nous donne un ventail des fonctions traditionnellement choisies :
P (k)
Maximisation du dbit total : M AXIMISER
D
kA
Equit max-min :
M AXIMISER
Equit proportionnelle :
M AXIMISER
min D(k)
kA
Q (k)
D
kA
Bien que lquit max-min apparaisse comme lquit parfaite, elle nest
pas vraiment adapte notre problme. En effet, certaines applications sont
plus gourmandes que dautres en termes de cot de calcul ou de cot de
communication, ou sont de manire gnrale moins adaptes la plateforme que dautres. On est donc dans une situation fortement dissymtrique. Se contraindre assurer un dbit gal entre ces deux applications
conduit gnralement une mauvaise utilisation de la plate-forme.
6
2.6
X (k)
P
:
i w(k) 6 Wi
kA
X X (k)
i P :
j b(k) 6 Bi
j tel que kA
iM j
(k)
i P, k A : i > 0
(Contraintes de calcul)
(Contraintes de communication)
(Contraintes de faisabilit)
Nous allons voir que loptimisation Lagrangienne couple des techniques de gradient distribu permet de rsoudre notre problme de manire compltement dcentralise. Nous commenons donc par rappeler
quelques notions en section 3.1 puis nous prsentons en section 3.2 les travaux de [13] qui ont utilis ce type de techniques pour un problme un
peu plus simple : le partage de bande passante dans un rseau. Nous expliquons ensuite en section 3.3 comment appliquer ces techniques notre
cadre de travail, et enfin nous proposons en section 3.4 un algorithme distribu bas sur ces techniques.
3.1
Loptimisation Lagrangienne est particulirement adapte la rsolution de problmes doptimisation non linaires. Nous rappellons ici quelques
dfinitions et rsultats tirs de [5].
Considrons une fonction continue f de Rp dans R et n fonctions continues Ci de Rp dans R. Soit le problme doptimisation suivant :
M AXIMISER f ()
AVEC LES CONTRAINTES
(1)
n 7] , +]
R
(
Les conditions de Slater [5] donnent que sil existe au moins un ralisable, alors lensemble des multiplieurs de Lagrange est compact et nonvide. Le thorme suivant en est une consquence.
8
inf d()
>0
3.2
3.3
iP
kA
j tel que kA
iM j
kA iP
kA
j tel que
iM j
(k)
i =Prix
{z
(4)
Puisque les conditions de Slater sont vrifies (voir dmonstration A.1),
nous pouvons utiliser le thorme 1 et trouver un couple de multiplieurs de
Lagrange ( , ) en rsolvant le problme dual 3. On obtient une condition
sur et . :
Theorem 2. Au sup>0 L(, , ), la proprit suivante est vrifie :
k
(k)
(k)
min i
iP
iP
(i Wi + i Bi )
iP
3.3.1
X
kA
(k)
ln min i
iP
Conclusion
(k)
Bien que ce rsultat ne nous donne pas le dtail des taux i , la connaissance des prix nous permet dobtenir les dbits. Or, il existe un algorithme
permettant de calculer les taux de faon distribue partir des dbits, pourvu
que ceux-ci soient ralisables. Il sagit dune adaptation [3] de lalgorithme
dAwerbuch-Leighton [1, 2] initialement prvu pour le calcul des flots dans
un rseau.
Nous allons donc nous concentrer sur le calcul des prix minimaux pour
chaque tche, qui nous donneront directement les dbits.
10
iP
3.4
3.4.1
M INIMISER
d(, ) =
(i Wi + i Bi )
iP
P
kA
(k)
ln min i
iP
>0
>0
Gradient distribu
Comme expliqu dans les paragraphes prcdents 3.2, nous allons utiliser loptimisation Lagrangienne pour mettre en oeuvre un algorithme de
ngociations de prix. Cet algorithme est en fait une methode de gradient
distribu : la ressource Pi est responsable des prix i et i , et toutes rvaluent leurs prix proportionnellement loppos de la drive partielle de
la fonction duale. Cette drive se calcule facilement :
P w(k)
d
(k)
i = Wi
(1) min
(5)
P b(k)
d
(k)
i = Bi
(2) min
(k)
(k)
(1) : k A et i (= min
j descendant de i
(2) : k A et j|
(k)
(k)
j = min
Ainsi, seule la connaissance du prix le plus faible de larbre pour chaque
tche et du fait que lun des membre du sous-arbre a ce prix suffisent pour
dterminer les valeurs de i et i au pas suivant.
Notez que la mthode de gradient utilise est la mthode de la plus
grande pente, avec un pas linaire (par opposition aux mthodes de Jacobi
ou Gauss-Siedel, qui utilisent un pas non linaire, ou aux mthodes pas
optimal, qui ncessitent une connaissance globale de la fonction).
3.4.3
Algorithme
11
Difficults
ressources A et B aient le mme prix dans larbre (et quelles nont pas de
lien de descendance). Si A baisse son prix, cela a un impact sur le Lagrangien. Mais sil laugmente, le prix minimal reste celui de B et donc limpact
sur le Lagrangien nest pas le mme.
La convergence dun algorithme de gradient pour une fonction f C 2
est assure une condition assez large sur le pas qui, si elle est vrifie,
assure que la valeur de d dcrot chaque pas :
<
2
max(5f (x))
x
4
4.1
Validation Exprimentale
Environnement de simulation
4.1.1 SimGrid
Le programme de simulation a t dvelopp en C, avec la bibliothque
MSG de SimGrid [9]. SimGrid est une bibliothque de simulation dapplications distribues sur des plates-formes htrognes. Plus particulirement,
la bibliothque MSG est au plus haut niveau des composants de SimGrid,
12
4.2
Nos recherches sur lacclration du gradient ne sont pas encore termines. Actuellement, lalgorithme converge relativement lentement (10 secondes / 500 pas sur des plates-formes de petite taille). La principale raison
de cette lenteur, qui est explique plus bas, est la ncessit de choisir un pas
faible pour viter de trop grandes oscillations dues aux discontinuits de la
drive.
De plus, le temps de convergence de lalgorithme est proportionnel la
hauteur de larbre (puisqu chaque pas linformation des prix doit monter jusqu la racine puis redescendre jusquau feuilles), et ralentit avec
le nombre de tches. Cependant, ces performances devraient pouvoir tre
amliores.
Nous allons donc prsenter les rsultats actuels, ainsi que des pistes
prometteuses pour acclrer lalgorithme.
Choix du pas : Si lon choisit un pas trop grand, lalgorithme peut
osciller autour de la solution, car la fonction duale d nest pas C 2 . La figure F IG . 5(a) reprsente lvolution des prix et en fonction du temps
(2000 pas) sur une plate-forme simple (F IG . 6) comprenant 6 ressources de
calcul et avec 3 tches 2 dans le cas dun pas trop grand : lalgorithme ne
converge pas et les valeurs des prix oscillent.
Inversement, si le pas est trop faible, lalgorithme converge trop lentement, comme le montre la figure F IG . 5(c), obtenue dans les mmes conditions.
4.2.1
Acclration de lalgorithme
13
0.6
0.5
Bacchus.M
Artemis.L
Chronos.M
Chronos.L
Demeter.M
Hera.M
Eros.L
Demeter.L
Hera.L
Artemis.M
Bacchus.L
Eros.M
0.5
0.4
Value
0.4
Value
0.6
Bacchus.M
Artemis.L
Chronos.M
Chronos.L
Demeter.M
Hera.M
Eros.L
Demeter.L
Hera.L
Artemis.M
Bacchus.L
Eros.M
0.3
0.3
0.2
0.2
0.1
0.1
0
20
30
40
50
60
70
Time (s)
80
90
100
110
20
30
40
80
90
100
(b) = 3.10
Bacchus.M
Artemis.L
Chronos.M
Chronos.L
Demeter.M
Hera.M
Eros.L
Demeter.L
Hera.L
Artemis.M
Bacchus.L
Eros.M
0.5
0.4
Value
60
70
Time (s)
(a) = 1.5.10
0.6
50
0.3
0.2
0.1
0
20
30
40
50
60
70
Time (s)
80
90
100
110
(c) = 1.0.105
min(x, y) (( x) + ( y) )
En augmentant le paramtre , on sapproche de plus en plus de la
fonction min . . .
14
110
Pmaster
15
0.2
10
5
1.5
B
1
0.5
1
F IG . 6 Plate-forme simple
Algorithme asynchrone : Il nest a priori pas ncessaire pour que lalgorithme converge que les diffrentes ressources calculent leurs variations
simultanment. On peut imaginer un algorithme asynchrone o les prix
et des ressources proches du matre voluent plus rapidement que ceux
des ressources loignes. Ce nest en tout cas pas incompatible avec la mthode du gradient tant que lon peut garantir qu chaque pas du gradient,
la fonction objectif diminue.
Cette mthode pourrait viter que le temps de convergence soit proportionnel la hauteur de larbre. De plus, les esclaves loigns du matres
sont ceux qui ont le moins de chances davoir le prix le plus faible pour une
tche, et ils convergent trs vite vers un prix nul. On peut donc se permettre
quils convergent plus lentement.
4.2.2
Adaptabilit de lalgorithme
Nous montrons ici que notre algorithme peut sadapter des modifications locales des paramtres de capacit de calcul ou de communication.
Bien que ladaptation ne soit pas encore rapide, nous souhaitons montrer
ici que notre algorithme peut tre excut en continu sur la plate-forme et
quil sadaptera aux variations de bande passante ou de capacit de calcul.
La figure F IG . 7 montre lvolution des prix de chaque ressource de
(k)
calcul pour chaque tche (F IG . 7(a) : (, ), F IG . 7(b) : i ) en fonction du
temps sur la mme plate-forme que celle des expriences prcdentes, o
les ressources E et H (F IG . 6) voient leur puissance de calcul divise par
2 priodiquement pendant des priodes de 20 secondes, puis revenir la
normale pendant 20 secondes.
15
0.6
0.5
Hera.Task3
Hera.Task2
Artemis.Task3
Chronos.Task3
Artemis.Task2
Bacchus.Task1
Chronos.Task1
Demeter.Task3
Eros.Task3
Bacchus.Task2
Hera.Task1
Bacchus.Task3
Artemis.Task1
Eros.Task1
Demeter.Task2
Chronos.Task2
Eros.Task2
Demeter.Task1
5
Price
0.4
Value
Bacchus.M
Artemis.L
Chronos.M
Chronos.L
Demeter.M
Hera.M
Eros.L
Demeter.L
Hera.L
Artemis.M
Bacchus.L
Eros.M
0.3
3
0.2
2
0.1
1
0
20
30
40
50
60
70
Time (s)
80
90
100
20
110
(a) Evolution de ,
30
40
50
60
70
Time (s)
80
90
100
110
F IG . 7 Adaptabilit de lalgorithme
4.3
Nous prsentons ici brivement la programmation semi-dfinie positive (SDP), outil mathmatique qui nous a permis de vrifier de manire
centralise la validit des rsultats de lalgorithme distribu.
La programmation semi-dfinie positive permet de rsoudre des problmes du type :
X
min cT x |
xj Aj B 0
(6)
x
j=1
O :
x = (x1 , x2 , , xn ) est le vecteur variable
c est un vecteur constant de taille n
(Aj )j[1..n] est un ensemble de n matrices symtriques de taille mm.
B est une matrice symtrique constante de taille m m.
0 signifie est semi-dfinie positive
Comme montr dans [12], la SDP (semi-definite programming) permet
aussi de rsoudre des problme doptimisation faisant intervenir des fonctions contenant des sommes de produits des variables sous des contraintes linaires, et ceci en temps polynomial.
Cest le cas de notre problme doptimisation puisque notre fonction
objectif est gale au produit des dbits de chaque application. Pour plus
de dtails sur les mthodes que lon peut utiliser pour transformer un problme de ce type en un problme SDP 6, nous vous renvoyons la thse de
Corinne Touati [12](chapitre 4.1).
Nous avons donc utilis la bibliothque gratuite de programmation semidfinie positive CSDP [7].
16
5
5.1
Conclusion
Contributions
Le travail consign dans ce rapport est une extension des travaux commencs dans [3], o nous nous intressons lordonnancement en rgime
permanent de collections de tches sur une plate-forme en structure darbre.
Nos contributions sont les suivantes :
Nous avons introduit lquit proportionnelle et relax lhypothse
1-port et montr que ces hypothses permettent dobtenir un algorithme distribu efficace de calcul des taux, complment de lalgorithme dAwerbuch-Leighton trait dans [3].
Nous avons adapt des mthodes doptimisation Lagrangienne et de
gradients distribus utilises dans [13] un problme plus complexe.
Bien quil ny ait pas de preuve de convergence de lalgorithme
cause des discontinuits des drives du Lagrangien, nous avons montr exprimentalement sur des plates-formes simples que lalgorithme
est correct et converge vers une solution trouve thoriquement par
la programmation semi-dfinie positive.
Il faut cependant reconnatre que lalgorithme tudi ici et celui dAwerbuchLeighton, sils ont lavantage dtre tous deux distribus, convergent lentement. On peut trs certainement amliorer la vitesse de convergence de
lalgorithme de calcul des prix, mais pour linstant, nos algorithmes ne
semblent pas adapts des petites plates-formes. Un algorithme centralis y serait trs certainement plus efficace. Cest pourquoi il serait intressant de complter cette tude par des simulations sur des plate-formes
de grandes tailles gnres par Tiers [8]. Cela nous permettra dvaluer
partir de quelle taille de plates-formes ces techniques sont valables.
5.2
Extensions possibles
Les perspectives ouvertes par notre travail sont multiples :
Tout dabord, la convergence de lalgorithme peut vraisemblablement
tre amliore en utilisant les ides suggres dans la section 4.2.1.
Pour que la plate-forme soit mieux utilise, il peut tre intressant de
voir comment le modle se comporte si chaque tche est gre par un
matre diffrent. Ceci suppose des modifications importantes dans le
modle, notamment de sparer la gestion des prix des ressources de
calcul () de celle des prix des liens ().
Dautres mesures que lquit proportionnelle, telles que dcrites dans [11]
sont envisageables et pourraient mener une expression simple du
Lagrangien. A priori, ces mesures compliquent cette expression, mais
il semble possible de les implmenter.
17
Enfin, pour que ltude soit complte, il reste implmenter lalgorithme dAwerbuch-Leighton qui calculera les taux partir des dbits calculs par notre algorithme. Ceci nous permettrait dvaluer
les performances du couplage de ces deux algorithmes et denvisager une mise en uvre sur une plate-forme relle.
18
Rfrences
[1] B. Awerbuch and T. Leighton. A simple local-control approximation
algorithm for multicommodity flow. In FOCS 93 : Proceedings of the
24th Conference on Foundations of Computer Science, pages 459468. IEEE
Computer Society Press, 1993.
[2] B. Awerbuch and T. Leighton. Improved approximation algorithms
for the multi-commodity flow problem and local competitive routing
in dynamic networks. In STOC 94 : Proceedings of the 26h ACM symposium on Theory of Computing, pages 487496. ACM Press, 1994.
[3] O. Beaumont, L. Carter, J. Ferrante, A. Legrand, L. Marchal, and Y. Robert. Centralized versus distributed schedulers multiple bag-of-task
applications. In International Parallel and Distributed Processing Symposium IPDPS2006. IEEE Computer Society Press, Apr. 2006.
[4] O. Beaumont and L. Marchal. Pipelining broadcasts on heterogeneous
platforms under the one-port model. Technical Report RR-2004-32,
LIP, ENS Lyon, France, jul 2004.
[5] D. P. Bertsekas. Constrained Optimization and Lagrange Multiplier Methods. Academic Press, Inc., 1982.
[6] Berkeley Open Infrastructure for Network Computing.
boinc.berkeley.edu.
http://
[7] B. Borchers and J. G. Young. Implementation of a primal-dual method for sdp on a shared memory parallel architecture. Computational
Optimization and Applications, 2006, to appear.
[8] K. L. Calvert, M. B. Doar, and E. W. Zegura. Modeling internet topology. IEEE Communications Magazine, 35(6) :160163, June 1997.
[9] H. Casanova, A. Legrand, and L. Marchal. Scheduling Distributed
Applications : the SimGrid Simulation Framework. In Proceedings of
the third IEEE International Symposium on Cluster Computing and the Grid
(CCGrid03), may 2003.
[10] B. Hong and V. Prasanna. Distributed adaptive task allocation in heterogeneous computing environments to maximize throughput. In
International Parallel and Distributed Processing Symposium IPDPS2004.
IEEE Computer Society Press, 2004.
[11] J. Mo and J. Walrand. Fair end-to-end window-based congestion
control. IEEE/ACM Transaction on Networking, 8(5) :556567, 2000.
[12] C. Touati. Les principes dquit appliqus aux rseaux de tlcommunications. PhD thesis, Universit de Nice Sophia-Antipolis, 2003.
[13] H. Yache, R. R. Mazumdar, and C. Rosenberg. A game theoretic framework for bandwidth allocation and pricing in broadband networks.
IEEE/ACM Transaction on Networking, 8(5) :667678, 2000.
19
A
A.1
Dmonstrations
Validit des conditions de Slater
Bi
Wi
(k)
,
min
i k i 6 min
min
(k)
2
iP
iP
N.w
N .b(k)
(k)
(k)
6=0
kA et w
kA et b
6=0
A.2
Condition sur et
1
(k)
min i
iP
(k)
L
(k)
i
1
(k)
i
D(k)
On obtient donc :
Soit
i P
Soit
(k)
i = 0
(k)
i 6= 0 et D(k) =
(7)
1
(k)
i
kA
kA
i tel que
(k)
i 6=0
(i Wi + i Bi ) +
iP
ln D(k) K
kA
Pour maximiser
le Lagrangien,
il faut maximiser D(k) et donc choisir lenn
o
(k)
(k)
(k)
est