Ecole des Mines de Nantes Elasticité logicielle pour optimiser l empreinte énergétique Thomas Ledoux (équipe Ascola, INRIA-EMN, LINA) direction des études décembre 2010 page 1
Relation logiciel empreinte énergétique En 2008, les centres de données ont consommé 2% de l énergie électrique mondiale Exemple : le centre de données Facebook AVANT : les 30 000 serveurs consommaient 100.000.000 kwh par an, autant qu un TGV duplex qui circulerait 365 jours par an, 24 heures sur 24! APRES : en abandonnant PHP pour HipHop for PHP (code compilé en C++), il faut 2 fois moins de serveurs à Facebook pour fonctionner Source GreenIT.fr Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 2
Windows 7 + Office 2010 Pro nécessitent 15 fois plus de puissance processeur, 71 fois plus de mémoire vive et 47 fois plus d espace disque que le couple Windows 97 + Office 97 Relation logiciel empreinte énergétique Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 3
Ressources dans le développement logiciel Années 60-70 : gestion explicite des ressources Utilisation fine de la mémoire, nombre de cycles du processeur, nombre d accès au disque Année 80-90: gestion plus implicite (due à la loi de Moore) Ramasse-miettes, pointeurs cachés (Smalltalk puis Java) Machines virtuelles Depuis 15 ans : abstraction des ressources physiques Focus sur les processus de développement (patterns, usine logicielle), la facilité de maintenance et d évolution (framework, ingénierie des modèles) Logiciel complexe à forte valeur ajoutée mais énergivore! Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 4
Réduire l empreinte énergétique du logiciel Approche langage Code écrit en PHP vs Code écrit en C Logiciel énergivore Approche architecturale vs search search2 Approche modulaire En log vs en C Colloque Direction Eco-conception des études Juin 2012 18/10/12 page 5
Plan de l exposé Composition dynamique de services et Qualité de service (QoS) Compromis QoS énergie Composition dynamique de services/composants Eco-Architecture pour le Cloud et élasticité logicielle Une chaîne énergétique de bout en bout : service sur l étagère centre de données Un framework autonomique multi-layer pour le Cloud Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 6
Composition dynamique de services et Qualité de service (QoS) Colloque Direction Eco-conception des études Juin 2012 18/10/12 page 7
Compromis QoS énergie Colloque Direction Eco-conception des études Juin 2012 18/10/12 page 8
Modèle de QoS pour les services : de la théorie + Energy Consumption, Energy-efficiency Colloque Direction Eco-conception des études Juin 2012 18/10/12 page 9
Modèle de QoS pour les services : à la pratique Site e-commerce : service «rechercher un livre» Critères de QoS Performance du temps de réponse Fiabilité de la réponse Services quasi iso-fonctionnels Recherche : Complétion automatique du nom Résultat : 5 premiers résultats seulement Résultat : Sans la jaquette Résultat : Suggestion achats Autres propriétés non-fonctionnelles Session avec historique récent Compte avec commentaire en ligne, historique achats en ligne Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 10
Illustration : «trouver son chemin» Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 11
Proof-of-concept Objectif Composition dynamique de services/composants QoSaware Deux critères de QoS Le temps de réponse L énergie consommée Services 2 types de pages jaunes, 2 types de localisation, 1 transport, 2 types de cartes Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 12
Relation charge/temps de réponse Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 13
Relation charge/empreinte énergétique Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 14
Vers une composition optimale Gestion autonomique des configurations alternatives Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 15
Environnement de test et résultats Pondération QoS : 50-50 perf/énergie Logiciels FraSCAti (frascati.ow2.org) : une implémentation du modèle SCA (Service Component Architecture) WildCAT (wildcat.ow2.org) : un framework pour le monitoring Choco (choco.emn.fr) : un solveur de contraintes Résultats Temps de réponse : 135 ms 105 ms Energie : gain jusqu'à ~20 Watt un moment donné Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 16
Vers une logique de contrats SLA (Service-Level Agreement) SLA : un contrat sur la QoS entre un consommateur de service et le fournisseur du service Le compromis QoS énergie peut se régler grâce au concept de SLA Une analogie : la gestion des places d un TGV Nantes-Paris, 1 ère classe : 110 Nantes-Paris, 1 ère classe, à prix cassé (heures creuses, non échangeable) : 45 Une réalité-fiction : la VoD 4 le film en HD 3 sinon 1 entre 1h et 4h du matin Permet d exploiter la sous-utilisation des serveurs VoD Trouver le bon équilibre revenus - empreinte Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 17
Eco-Architecture pour le Cloud et élasticité logicielle Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 18
Big picture QoS optimisation Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 19
Modèle d optimisation Niveau SaaS Objectif : trouver la configuration qui dégrade le moins l application au meilleur coût (financier énergétique) avec Niveau IaaS Objectif : minimiser le nombre de machines physiques nécessaires pour héberger les VMs (requises par les applications) Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 20
Illustration : la publicité sur Internet Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 21
Eco-gestionnaire de publicités Objectif : Maitriser l empreinte énergétique Comment? adapter le contenu (le composant pub) plutôt que les ressources respecter un seuil de consommation quelque soit la charge Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 22
Environnement de test et résultats Deux expérimentations : Ingénieurs en apprentissage (hors Cloud faute de temps) : OSGi/WildCAT/JMeter/Wattmètre Doctorant (Cloud) : Politique Application : FraSCAti/Restlet/Nginx/Choco/WildCAT Infrastructure : G5K/Xen/Wattmètre/WildCAT Si workload >15 requêtes/s et énergie consommée > 75W et composant = vidéo alors composant := image énergie consommée observée ~ 50 W Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 23
Quelques courbes Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 24
Eco-Architecture multi-niveaux Ecogestionnaire de publicités Trouver son chemin Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 25
Synergie entre niveaux : Vers une chaîne énergétique de bout en bout Objectifs : Gérer les objectifs contradictoires Exemple : l application demande plus de ressources alors que l hyperviseur tente une consolidation dynamique Améliorer l optimisation de l empreinte énergétique Exemple : proposition d un modèle de promotion des VMs pour exploiter la sous-utilisation des serveurs Comment Synchroniser les boucles autonomiques Gérer la concurrence à une base de connaissances publique (e.g. prix des VMs) Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 26
Conclusion Contributions Elasticité logicielle basée sur des configurations alternatives d une application réalisant un compromis QoS-énergie Synergie entre SaaS et IaaS pour optimiser l empreinte énergétique Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 27
Perspectives Modélisation des configurations alternatives par une approche dirigée par les modèles (Model-Driven Engineering) Mise en place de contrats SLA pour la gestion de l élasticité (SLA-driven capacity planning) Développement de modèles d optimisation energy-aware (e.g. promotions) Proposition de langages dédiés pour l expression des SLA, de la reconfiguration Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 28
Bibliographie sélective Frederico Alvares de Oliveira Jr., Remi Sharrock and Thomas Ledoux. Synchronization of Multiple Autonomic Control Loops: Application to Cloud Computing. In Coordination 2012, Stockholm, Sweden, June 14-15, 2012. Frederico Alvares de Oliveira Jr., Adrien Lèbre, Thomas Ledoux and Jean-Marc Menaud. Self-management of applications and systems to optimize energy in data centers. In Achieving Federated and Self- Manageable Cloud Infrastructures: Theory and Practice, IGI Global, May 2012 Yousri Kouki and Thomas Ledoux. SLA-driven Capacity Planning for Cloud applications. In IEEE CloudCom 2012, Taipei, Taiwan, Province Of China, pages 0-0, December 2012 http://www.greenit.fr/article/logiciels/cloud-elastique-comment-limiter-laconsommation-des-data-centers-4578 Direction Colloque des Eco-conception études Juin 2012 18/10/12 page 29
Multi-control loop Architecture Colloque Direction des Eco-conception études Juin 2012 18/10/12 page 30