Portfolio#Technologie
2 février 2016

Comment alléger son empreinte carbone virtuelle, notamment grâce au code ?

Lignes de code inutiles, infrastructures inadaptées, sites internet mal conçus… L’énorme quantité d’énergie accaparée par les technologies pourrait pourtant être réduite drastiquement. Petit guide pour réduire son empreinte carbone virtuelle.


« Chaque requête Google consomme autant d’énergie qu’une ampoule allumée pendant une heure », alerte Thierry Leboucq, fondateur de la startup Kaliterre spécialisée dans l’éco-conception de logiciels. A l’échelle d’un l’utilisateur, c’est certes une goutte d’eau, mais au niveau planétaire, l’informatique est un véritable gouffre énergétique : elle pèse aujourd’hui pour 2% de la production électrique mondiale et la consommation augmente de façon vertigineuse.

Une des premières sources de gaspillage est la surdimension systématique des infrastructures, en termes de serveurs ou de capacités logiciel. « Comme si on prenait une énorme boîte pour mettre un tout petit objet dedans » , explique Thierry Leboucq. 45% des fonctionnalisés d’un logiciel ne sont ainsi jamais utilisées, selon une étude de Standish Group et 25% des applications d’un système d’information dans une entreprise sont redondantes avec celles déjà existantes, rapporte une autre étude de HP.

Le code Java ou Ruby plus énergivore que C++ ou Python

Deuxième source de gaspillage, la conception même du logiciel. Lorsque dix onglets sont ouverts sur internet, le navigateur rafraîchit en permanence ces dix onglets, ce qui engendre des centaines de requêtes en continu vers les serveurs. Seule 25% de l’énergie utilisée par une application mobile sert en réalité directement à son fonctionnement, le reste étant « consommé » par les annonces publicitaires, la localisation géographique ou d’autres fonctions cachées. Il serait pourtant facilement possible de supprimer le rafraîchissement automatique d’un onglet lorsque celui-ci n’est pas actif par exemple.

Troisième cause de gâchis : le code informatique lui-même. Par facilité, les développeurs ont recours à des langages qui ajoutent des « surcouches » inutiles et génèrent des milliers de lignes de code inutiles. Plus on rajoute de niveaux de « compilations » (langages intermédiaires qui se chargent d’interpréter ou d’optimiser le code source), plus le logiciel est énergivore. Les logiciels écrits en Java ou Ruby consomment par exemple deux à cinq fois plus que leur équivalent en C++, Perl ou Python.

Des bonnes pratiques édictées par le Green Code Lab

Jusqu’à présent, comme le matériel (serveurs, processeurs, etc) ne coûtait pas très cher, les développeurs n’ont pas fait spécialement attention à cet aspect des choses. Sauf qu’aujourd’hui, le besoin de miniaturisation et la volonté de prolonger l’autonomie des batteries change la donne. Le potentiel est énorme. Le Green Code Lab et l’Ademe ont mesuré la consommation énergétique des 100 sites français les plus visités, avec des variations de un à 30 par page vue pour des sites semblables.

L’association Green Code Lab publie à destination des programmateurs un manuel de bonnes pratiques tandis que le projet européen ENTRA vise lui aussi à concevoir des outils plus économes. Avec son logiciel Greenspector, Kaliterre propose aux entreprises un diagnostic complet de leur parc et leur soumet des solutions de remplacement. « Pour un de nos clients, nous avons réussi à faire passer l’autonomie d’une application de 4h à 11h de batterie » , assure Thierry Leboucq. Avec à la clé un outil aussi rapide et efficace pour l’utilisateur.

En attendant les progrès des informaticiens, chaque utilisateur peut à son niveau contribuer à réduire son empreinte énergétique. Consulter ses courriels sur mobile ou sur tablette plutôt que sur PC, par exemple, permet de diviser par cinq sa consommation énergétique.

Article écrit par Céline Deluzarche

Crédit photo : Shutterstock