Donnez votre avis !                   Depuis votre smartphone, sur :                    http://notes.mstechdays.fr    De n...
Eco Conception logicielle :           Jean-Philippe Gouigoux jp.gouigoux@free.fr                Olivier Philippot ophilipp...
Agenda        • Définition et vision / Etat de l’art        • Des exemples concrets pour le Web        • Des exemples conc...
Présentation               Groupe dutilisateurs qui souhaite rendre le développement logiciel plus               durable e...
L’innocent Chat potté     – 70 Millions d’heure de calcul, 25 TJoules     – http://dwave.wordpress.com/2011/11/20/fun-with...
Analyse du cycle de vie du matérielSource
Constat sur l’empreinte des technologies                                      Source ADEME
L’éco-conception des logiciels ?Limiter l’empreinteenvironnementale etsociale tout au long ducycle de vie du logiciel     ...
Un peu de lecture
Des travaux de R&D en cours• Projet Code Vert  – Mise en place d’un référentiel JAVA et WEB  – Outil de détection de « dir...
Des retours d’expériences des « grands »• Facebook   – Hip Hop for PHP   – passage dune technologie PHP vers C++ côté serv...
Des retours d’expériences des « plus petits »• Banque cantonale de Fribourg   – Mise en place d’un référentiel WEB• Audits...
Exemple d’un pattern sur le besoin         A-t-on besoin de tout cela ?
Comment mesure t’on l’impact du logiciel ?« Ce qui ne peut pas être mesuré ne peut pas être géré».Peter Drucker• Mesure ph...
Exemple d’un pattern qui peut rapporter                                     +1W !
Impact des bonnes pratiques de développementRÉDUIRE L’IMPACT DU WEB
Méthodologie de mesure    Informations    plateforme     Modélisation     énergétique
Démo – 1: Power API                Sera réalisé                  en live
Démo – 1: WEB Energy Archive                Sera réalisé                  en live
Version 1 : Images un peu lourde
Version 2 : Images et CSS optimisées                       Réduction de la taille des images                       Compres...
Version 1 et 2 : Comparaison            Même rendu            30% de gain sur l’énergie            15% de gain sur la mémo...
Version 3 : Page statique                        Passade de Drupal à une page                        statique
Version 1 et 3 : Comparaison            Même rendu            45% de gain sur l’énergie            44% de gain sur la mémo...
Analyse d’une page lourde
Analyse d’une page lourde                      1 000 000 pages par jours                      Soit pour la partie client s...
Suppression des images                     • Suppression des images                     • Suppression des publicités      ...
Au final sur 60 sites mesuré par WEA• Meilleur site mesuré : 5Wh pour 1000p• Pire site mesuré : 250 Wh pour 1000p• Une mar...
Save the date !Sortie de Web Energy Archive imminente !Pour vous tenir, informé allez surhttp://webenergyarchive.com/
Impact des bonnes pratiques de développementSUIVI DE LA CONSOMMATION
Démo – 0: Le matériel… simplissime                 Sera réalisé                   en live
Démo – 1: Plugwize et l’enregistreur shell                   Sera réalisé                     en live
Démo – 2: Wizard KST                Sera réalisé                  en live
Démo – 3: Attendre le point idle                  Sera réalisé                    en live
Démo – 4: Application PROFI - Personnes                 Sera réalisé                   en live
Démo – 5: Application PROFI - Contrats                 Sera réalisé                   en live
Démo – 6: Résultats dans KST                 Sera réalisé                   en live
Démo – 7: Rejeu de test du pauvre                 Sera réalisé                   en live
Portabilité… et efficience énergétique !
On passe à l’arme lourde…
L’heure de véritéAvant profilage     Après profilage
Effet de tempsAvant profilage                 Après profilage                  11 secondes                     6 secondes
Effet de puissanceAvant profilage      Après profilage         20 W                  6W
Un peu de calcul intégral• 45% gain de temps• 70% gain de puissance• En tout, 83% gain de consommation  – (1 – 0.45) x (1 ...
Un peu de calcul• Economie de 0.051 Wh  – 14 W sur 6 secondes  – 20 W sur les 5 secondes non utilisées• Electricité à 0.12...
Et ça vaut le coup ?•   Durée de vie applicative de 5 ans•   ~3000 € gagnés•   Inutile s’il faut une semaine de formation•...
Différences de code – 1: gestion des chaînesConcaténation de chaînes   Utilisation du StringBuilder
Différences de code – 2: services web / BDAppels multiples (chatty)   Appels regroupés (chunky)
Différences de code – 3: gestion des boucles      • Early breakAppels multiples (chatty)
Différences de code – 4: seulement si besoin      • Lazy executionAppels multiples (chatty)
Différences de code – 5: exceptions      • Une exception porte bien son nom !Appels multiples (chatty)
Au final• Pareto sur les pratiques  – 5 bonnes pratiques montrées  – 97% de l’amélioration constatée• Suivi simplissime• P...
Remarque sur l’efficience énergétiqueMoustique                      Gorille• Pic de conso : 13.5 W        • Pic de conso :...
Synthèse/ouverturePrendre du recul                    Pourquoi le code• ACV globale                       • Le code permet...
En conclusion, l’éco-conception  Est simple  Apporte des gains   immédiats sur l’énergie  et l’obésiciel  Permet d’agir su...
Prochain SlideShare
Chargement dans... 5
×

Eco Conception logicielle : Comment réduire par deux la consommation d’énergie d’une application ou d’un site web

240

Published on

Sites web qui n’en finissent plus de se charger, obligation de renouveler des ordinateurs parfaitement fonctionnels, problèmes de réactivité et de performance des applications métier, autonomie décroissante des tablettes... : l’obésité des logiciels et des données handicape les entreprises tout en augmentant inexorablement le coût de fonctionnement de leur système d’information. Un gâchis qui se chiffre à plusieurs milliards de dollars chaque année ! Cette situation n’est, heureusement, pas une fatalité. L'éco-conception des logiciels a pour but de résoudre ces problèmes de performance tout en réduisant l’empreinte écologique des systèmes d’information. Cette session sera l'occasion de vous montrer comment réduire par 2 la consommation d'un site web ou d'une application. Chaque bonne pratique sera démontrée et mesurée en temps réel lors de la session. En bonus : Nous benchemarkerons la consommation d'énergie de vos sites web en live ! Qui sera le plus éco-conçu ?

0 commentaires
0 mentions J'aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Be the first to like this

Aucun téléchargement
Vues
Total des vues
240
Sur Slideshare
0
À partir des ajouts
0
Nombre d'ajouts
1
Actions
Partages
0
Téléchargements
7
Commentaires
0
J'aime
0
Ajouts 0
No embeds

No notes for slide
  • Notation
  • 15-15-15 +10 de questions
  • Les blocs de couleurs sont éditables et peuvent reprendre la couleur du type de session qui est donnée.
  • Le chat potté : equivalent ERajouter exempleintro ACV Conso electrique; cout de construction et fin de vie 80%
  • Exemple plastique voiture a développer…
  • Messages A la portée de tout dev Les résultats sont concrets : code propre Mesure c’est simple, les gains sont facile à voir
  • Annonce Beta60 sites testé tte les nuits
  • Correlation perf et green
  • Transcript of "Eco Conception logicielle : Comment réduire par deux la consommation d’énergie d’une application ou d’un site web"

    1. 1. Donnez votre avis ! Depuis votre smartphone, sur : http://notes.mstechdays.fr De nombreux lots à gagner toutes les heures !!! Claviers, souris et jeux Microsoft… Merci de nous aider à améliorer les TechDayshttp://notes.mstechdays.fr
    2. 2. Eco Conception logicielle : Jean-Philippe Gouigoux jp.gouigoux@free.fr Olivier Philippot ophilippot@kaliterre.fr Eric Mittelette ericmitt@microsoft.comGreen IT
    3. 3. Agenda • Définition et vision / Etat de l’art • Des exemples concrets pour le Web • Des exemples concrets pour .NetGreen
    4. 4. Présentation Groupe dutilisateurs qui souhaite rendre le développement logiciel plus durable et plus vertueux http://greencodelab.fr/ Jean-Philippe GOUIGOUX jp.gouigoux@free.fr Responsable Architecture / Formation / Innovation Olivier PHILIPPOT ophilippot@kaliterre.fr 06 63 09 06 90 Consultant éco-conception Eric MITTELETTE ericmitt@microsoft.com Relation Technique Développeur & IT
    5. 5. L’innocent Chat potté – 70 Millions d’heure de calcul, 25 TJoules – http://dwave.wordpress.com/2011/11/20/fun-with-puss-n-boots/If you could eat 500 bananas per day, 23 minutesit would take you 327 years
    6. 6. Analyse du cycle de vie du matérielSource
    7. 7. Constat sur l’empreinte des technologies Source ADEME
    8. 8. L’éco-conception des logiciels ?Limiter l’empreinteenvironnementale etsociale tout au long ducycle de vie du logiciel Source KALITERRE
    9. 9. Un peu de lecture
    10. 10. Des travaux de R&D en cours• Projet Code Vert – Mise en place d’un référentiel JAVA et WEB – Outil de détection de « dirty » pattern• Reflexion de normalisation – AFNOR / ISO• Green Software Engineering – Mesure du web• Travaux des ‘major’ – Microsoft Google FaceBook..
    11. 11. Des retours d’expériences des « grands »• Facebook – Hip Hop for PHP – passage dune technologie PHP vers C++ côté serveur• Linked In – Changement d’architecture – Réduction de 30 à 3 serveurs
    12. 12. Des retours d’expériences des « plus petits »• Banque cantonale de Fribourg – Mise en place d’un référentiel WEB• Audits de sites web – Nombreuses améliorations identifiées Des actions simples à la porté de tous les acteurs Un ROI probant
    13. 13. Exemple d’un pattern sur le besoin A-t-on besoin de tout cela ?
    14. 14. Comment mesure t’on l’impact du logiciel ?« Ce qui ne peut pas être mesuré ne peut pas être géré».Peter Drucker• Mesure physique – Wattmètre nécessaire mais pas suffisant – Green Plugwise• Mesure logicielle – Intel Energy Checker – INRIA Power API
    15. 15. Exemple d’un pattern qui peut rapporter +1W !
    16. 16. Impact des bonnes pratiques de développementRÉDUIRE L’IMPACT DU WEB
    17. 17. Méthodologie de mesure Informations plateforme Modélisation énergétique
    18. 18. Démo – 1: Power API Sera réalisé en live
    19. 19. Démo – 1: WEB Energy Archive Sera réalisé en live
    20. 20. Version 1 : Images un peu lourde
    21. 21. Version 2 : Images et CSS optimisées Réduction de la taille des images Compression avec Yahoo SmushIT Minification du CSS
    22. 22. Version 1 et 2 : Comparaison Même rendu 30% de gain sur l’énergie 15% de gain sur la mémoire
    23. 23. Version 3 : Page statique Passade de Drupal à une page statique
    24. 24. Version 1 et 3 : Comparaison Même rendu 45% de gain sur l’énergie 44% de gain sur la mémoire
    25. 25. Analyse d’une page lourde
    26. 26. Analyse d’une page lourde 1 000 000 pages par jours Soit pour la partie client sur 1 an 200 MWh Ou 30 teq CO² 154 000 kM voiture
    27. 27. Suppression des images • Suppression des images • Suppression des publicités • Avec (sur Chrome et Firefox) – 56 Wh pour 1000 pages vues • Sans – 30 Wh pour 1000 pages vues
    28. 28. Au final sur 60 sites mesuré par WEA• Meilleur site mesuré : 5Wh pour 1000p• Pire site mesuré : 250 Wh pour 1000p• Une marge de manœuvre importante• Un gain d’échelle énorme
    29. 29. Save the date !Sortie de Web Energy Archive imminente !Pour vous tenir, informé allez surhttp://webenergyarchive.com/
    30. 30. Impact des bonnes pratiques de développementSUIVI DE LA CONSOMMATION
    31. 31. Démo – 0: Le matériel… simplissime Sera réalisé en live
    32. 32. Démo – 1: Plugwize et l’enregistreur shell Sera réalisé en live
    33. 33. Démo – 2: Wizard KST Sera réalisé en live
    34. 34. Démo – 3: Attendre le point idle Sera réalisé en live
    35. 35. Démo – 4: Application PROFI - Personnes Sera réalisé en live
    36. 36. Démo – 5: Application PROFI - Contrats Sera réalisé en live
    37. 37. Démo – 6: Résultats dans KST Sera réalisé en live
    38. 38. Démo – 7: Rejeu de test du pauvre Sera réalisé en live
    39. 39. Portabilité… et efficience énergétique !
    40. 40. On passe à l’arme lourde…
    41. 41. L’heure de véritéAvant profilage Après profilage
    42. 42. Effet de tempsAvant profilage Après profilage 11 secondes 6 secondes
    43. 43. Effet de puissanceAvant profilage Après profilage 20 W 6W
    44. 44. Un peu de calcul intégral• 45% gain de temps• 70% gain de puissance• En tout, 83% gain de consommation – (1 – 0.45) x (1 – 0.70) = 0.165• Calcul automatique
    45. 45. Un peu de calcul• Economie de 0.051 Wh – 14 W sur 6 secondes – 20 W sur les 5 secondes non utilisées• Electricité à 0.1211 € le KWh• Scénario répété – 100 fois par jour – 200 jours ouvrés – par ~100 gestionnaires – par ~50 clients• 5100 KWh/an, soit 618 €/an
    46. 46. Et ça vaut le coup ?• Durée de vie applicative de 5 ans• ~3000 € gagnés• Inutile s’il faut une semaine de formation• Mais…
    47. 47. Différences de code – 1: gestion des chaînesConcaténation de chaînes Utilisation du StringBuilder
    48. 48. Différences de code – 2: services web / BDAppels multiples (chatty) Appels regroupés (chunky)
    49. 49. Différences de code – 3: gestion des boucles • Early breakAppels multiples (chatty)
    50. 50. Différences de code – 4: seulement si besoin • Lazy executionAppels multiples (chatty)
    51. 51. Différences de code – 5: exceptions • Une exception porte bien son nom !Appels multiples (chatty)
    52. 52. Au final• Pareto sur les pratiques – 5 bonnes pratiques montrées – 97% de l’amélioration constatée• Suivi simplissime• Performance²  Consommation !
    53. 53. Remarque sur l’efficience énergétiqueMoustique Gorille• Pic de conso : 13.5 W • Pic de conso : 250 W• Durée du scénario : 9 s • Durée du scénario : 6 s• Coût énergétique : 121 W.s • Coût énergétique : 1500 W.s
    54. 54. Synthèse/ouverturePrendre du recul Pourquoi le code• ACV globale • Le code permet d’agir sur tout• Rapport entre construction fin la chaine de vie et conso endurant sa vie – Clim• 80% – Conso• Facteur d’échelle des – Nb machine datacenter ou des parcs – (PUE) machines • Corrélation Perf et Green
    55. 55. En conclusion, l’éco-conception Est simple Apporte des gains immédiats sur l’énergie et l’obésiciel Permet d’agir sur toute la chaine (Clim, serveur…) Est applicable pour tout type de logiciel ou site web
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×