Pour réduire la consommation énergétique des systèmes informatiques et embarqués, il faut se tourner vers les failles sans gravité qui surviennent régulièrement dans les programmes.

Profiter des erreurs minimes pour réduire la consommation énergétique

Des chercheurs de l'Université de Washington ont développé EnerJ, une solution qui pourrait réduire la consommation énergétique des systèmes informatiques jusqu'à 50 %, et de 20 à 30 % en moyenne, si l'on en croît les simulations opérées par les scientifiques. Une avancée qui aurait un impact important sur le domaine informatique tout entier :les téléphones mobiles pourraient être plus petits, ou avoir une autonomie plus longue, et les centres informatiques pourraient à terme réduire considérablement leur facture. L'idée principale de la solution EnerJ, est de tirer profit des petites erreurs qui peuvent survenir dans un programme, mais qui ne sont pas suffisamment importantes pour mettre le système en difficulté. Il peut s'agir d'erreurs de contrôles, ou d'une diminution de la tension électrique. Alors que la plupart des solutions de réduction de consommation énergétique se focalisent sur des moyens de refroidissement ou des modes d’alimentation à basse consommation, ici, les chercheurs se sont concentrés sur la partie logicielle des systèmes.

Ne plus corriger les erreurs sans gravité

Des erreurs surviennent constamment dans tout programme informatique: certaines sont critiques, d'autres non. Pour  le système, corriger ces erreurs consomme beaucoup d'énergie. Savoir faire la part des choses entre les erreurs critiques à patcher impérativement et les autres, pourrait donc a terme, permettre de consommer moins d'énergie. « Si l'on peut se permettre une erreur toutes les 100 000 opérations ou plus, on peut déjà économiser beaucoup d’énergie » rapporte le Professeur Luis Cèze, co-auteur de la recherche. Selon lui, les applications qui supportent plus facilement les erreurs sont le streaming vidéo ou audio, les jeux ou de reconnaissance d’image en temps réel pour les applications de réalité augmentée sur les appareils mobiles. « La reconnaissance d’image est toujours assez tolérante avec les problèmes qui surviennent comme les grains de poussière sur l’écran par exemple ». Explique Luis Cèze. « Si nous introduisons quelques points sur l’image en raison d’erreur, le système doit toujours fonctionner correctement, et c’est là que nous pouvons économiser de l’énergie » conclut-il.

Un programme fait la différence

EnerJ est un programme basé sur Java. Il vise à cerner toutes les erreurs qui n’auraient pas forcément d’impact et les distingue de celles qui en revanche, heurtent le bon fonctionnement d’un système. Le programme sépare les deux types d’erreur et créée une barrière infranchissable, afin d'éviter la fuite de données d'un côté ou de l'autre. Ainsi, le système ne dépense plus d'énergie pour les failles sans importance et se concentre sur les autres. Le programme pourrait être utilisé avec des puces à basse consommation pour réduire leur consommation en évitant les rafraîchissements sans importance. A noter que ce programme est en phase d’expérimentation. Les chercheurs espèrent pouvoir proposer EnerJ en open source d’ici cet été.