1. Optimisation des coûts d'exécution et ordonnancement pour les
applications dans les nuages
Sujet de thèse 2012 : Laurent Philippe et Veronika Sonigo
Institut FEMTO-ST / Département DISC
Contexte général
Pour rationaliser l'utilisation des ressources informatiques de plus en plus de sociétés ont recours
à l'hébergement et l'utilisation distante de leurs moyens de calcul ou de stockage. Cette tendance,
liée à l'accroissement et la abilité des réseaux autant qu'à la généralisation des techniques
de virtualisation, conduit à disposer de ressources d'exécution ou de stockage louées chez des
fournisseurs et dont les caractéristiques peuvent évoluer à la demande. Dans ce contexte, on parle
d'informatique dans les nuages, cloud computing, pour symboliser la dématérialisation et surtout
d'elastic computing pour l'aspect de conguration à la demande. L'exécution d'une application
peut ainsi être associée à un coût puisque la facturation des fournisseurs de ressources se fait à
l'heure de calcul. Les tarifs sont alors dépendants des caractéristiques des ressources utilisées.
Pour limiter les coûts il est alors nécessaire de prévoir les temps d'exécution et de réaliser les
demandes de ressources au plus juste.
Contexte de travail
Le problème général de l'optimisation de l'ordonnancement d'applications dans un contexte
hétérogène comme les clouds est NP-Complet. Il s'agit d'un problème qui a déjà été traité sous
diérents aspects dans le domaine des grilles de calcul avec l'objectif principal de réduire au
maximum les temps d'exécution ou le débit lorsqu'il s'agit d'applications de type pipeline [1].
Dans le cas des plateformes de type cloud, les propriétés attachées apportent des éléments
nouveaux qu'il faut prendre en compte pour rendre ecace l'exploitation des ressources. Parmi
ceux-ci nous pouvons citer les coûts, qu'ils soient nanciers ou énergétiques, et les incertitudes
liées au partage induit par la virtualisation. Ces éléments entraînent des diérences importantes
dans la dénition des problèmes d'optimisation sous-jacents et marquent l'originalité du sujet
de recherche que nous proposons ici.
Le travail s'appuiera, d'une part, sur le travail réalisé dans le cadre de la thèse de Hala Sabba [5]
sur la composition optimale de plateformes dans le cloud et, d'autre part, sur l'expérience aquise
depuis plusieurs années dans la modélisation et l'exploitation de ce type de plateformes par
l'action Optimisation et services dans les systèmes complexes de l'équipe CARTOON grâce à
notre collaboration avec l'équipe INRIA ROMA de l'ENS de Lyon [2, 3] sur des problèmes de
scheduling en environnement hétérogène.
Enjeux
Le Cloud Computing est en pleine expansion à l'heure actuelle et les enjeux liés à cette technologie
sont de taille. La preuve en est qu'elle a fait l'objet de trois appels à projets spéciques dans le
cadre de l'action Usages, services et contenus numériques innovants des investissement d'avenir.
1
2. Ces appels se sont concentrés sur les infrastructures, les plates-formes de cloud computing et
la gestion des données de grande taille. L'exploitation des ressources reste cependant complexe
pour la plupart des utilisateurs et une mauvaise adéquation entre l'aectation de ces ressources
et l'application à exécuter peut conduire à une perte importante d'ecacité. L'étude de cette
adéquation et l'optimisation en général de l'utilisation des ressources est donc un enjeu majeur.
Les verrous associés à ce travail sont la proposition de modèles et d'algorithmes ecaces pour
l'exploitation de plateformes hétérogènes en présence d'incertitudes avec pour objectifs la mini-
misation des coûts énergétiques et nanciers. A notre connaissance aucune équipe ne travaille
sur le sujet au niveau mondial même si le problème du coût a été abordé dans [6] et les exécutions
de wokrlfow sur le cloud dans [4].
Objectifs
Le but de cette thèse est d'étudier les problèmes d'ordonnancement et d'optimisation dans le
contexte de plateformes de type cloud. Dans un premier temps une étude détaillée sur les plate-
formes existantes et sur les applications qui en tirent parti sera menée an d'établir un modèle
général et de dénir la caractérisation des problèmes qui doivent être étudiés. La proposition
de solutions aux problèmes identiés constituera le c÷ur du travail de la thèse. Ces solutions
pourront se présenter sous la forme d'algorithmes d'optimisation qu'ils soient optimaux ou heu-
ristiques accompagnés de preuves de complexité et/ou d'optimalité. La modélisation des pro-
blèmes sous la forme de programmes mathématiques avec un objectif à optimiser sous certaines
contraintes sera également utilisée pour apporter des solutions caractérisant l'optimalité des so-
lutions algorithmiques. L'ensemble des solutions seront comparées expérimentalement à l'aide
de simulateurs, voire de manière concrète sur des plateformes réelles.
Moyens
Nous avons récemment développé, en collaboration avec un collègue du Laboratoire de Mathé-
matiques de Besançon, des méthodes et outils permettant des modélisations sous la forme d'un
programme mathématique incluant des nombres entiers pour résoudre des problèmes proches.
Puisque certaines variables sont entières ou que les expressions du programme mathématique
ne sont pas linéaires, sa résolution devient un problème N P -Complet, souvent trop coûteux à
résoudre tel quel. Grâce à une relaxation rationnelle du problème et une formulation adaptée,
la résolution avec des opérateurs tels que la norme p favorise les solutions binaires, proches des
solutions entières attendues. Nous avons déjà utilisé ces méthodes avec succès dans le cas de
plateformes homogènes. Ils sera donc nécessaire de les étendre au contexte de la thèse.
Candidat
Fouad Hanna eectue actuellement, sous notre direction conjointe, son travail de master re-
cherche sur l'optimisation du choix de la plateforme d'exécution pour les applications de type
pipeline dans un cloud. Il disposera donc d'une connaissance solide du contexte de travail et des
méthodologies utilisées dans l'équipe pour résoudre ce problème. Il est par ailleurs actuellement
major de promotion de la deuxième année du master et fourni un travail de grande qualité dans
le cadre de son projet de recherche.
2
3. Références
[1] A. Benoit, P. Renaud-Goud, and Y. Robert. Sharing resources for performance and energy
optimization of concurrent streaming applications. In Computer Architecture and High Per-
formance Computing (SBAC-PAD), 2010 22nd International Symposium on, pages 7986.
IEEE, 2010.
[2] Anne Benoit, Alexandru Dobrila, Jean-Marc Nicod, and Laurent Philippe. Mapping workow
applications with types on heterogeneous specialized platforms. Parallel Computing, Special
Issue ISPDC'09, 37(8) :410427, 2011.
[3] Sékou Diakité, Loris Marchal, Jean-Marc Nicod, and Laurent Philippe. Practical steady-state
scheduling for tree-shaped task graphs. PPL, Parallel Processing Letters, 21(4) :397412,
2011.
[4] Suraj Pandey, Linlin Wu, Siddeswara Mayura Guru, and Rajkumar Buyya. A particle swarm
optimization-based heuristic for scheduling workow applications in cloud computing envi-
ronments. In Proceedings of the 2010 24th IEEE International Conference on Advanced In-
formation Networking and Applications, AINA '10, pages 400407, Washington, DC, USA,
2010. IEEE Computer Society.
[5] H. Sabbah. Modélisation et dimensionnement d'une plate-forme hétérogène de services. Thèse
de Doctorat, LIFC, Université de Franche-Comté, 23 mars 2009.
[6] Hongyi Wang, Qingfeng Jing, Rishan Chen, Bingsheng He, Zhengping Qian, and Lidong
Zhou. Distributed systems meet economics : pricing in the cloud. In Proceedings of the 2nd
USENIX conference on Hot topics in cloud computing, HotCloud'10, pages 66, Berkeley,
CA, USA, 2010. USENIX Association.
3