Efficacité énergétique : repenser le logiciel
By   |  October 14, 2013

La question de l’efficacité énergétique focalise généralement les esprits sur les aspects matériels. C’est une vision étroite du problème. Le logiciel a lui aussi son importance dans l’utilisation efficiente des plateformes de calcul, de sorte que la thématique du Power aware software est appelée à jouer un rôle de plus en plus critique.

Les codes de simulation étant souvent très consommateurs au niveau mémoire, l’efficacité énergétique globale ne peut plus se concevoir sur la partie calcul uniquement. Elle doit aussi prendre en compte le transport et à l’accès aux données” explique Marie-Christine Sawley. “La facilité de programmation de systèmes qui devraient offrir des centaines de milliers de cœurs, ainsi que la répartition et le transport judicieux des données, deviennent donc des questions majeures. C’est précisément l’objet des travaux des centres de recherche en co-design : étudier diverses pistes en partenariat avec les utilisateurs, les développeurs et les informaticiens, en amont de la phase de développement et d’implémentation, pour caractériser finement les besoins et les contraintes applicatifs.

A l’image des recherches menées et/ou financées par Intel, les programmes se multiplient, de part et d’autre de l’Atlantique, pour créer les conditions du développement de code plus vert. Parmi ceux-ci, on peut citer Green-Net, développé par les équipes Reso et Mescal de l’Inria en collaboration avec l’IRIT de Toulouse et Virginia Tech, un framework permettant de mesurer l’empreinte énergétique d’un code en architecture distribuée.

Dans le même ordre d’idée, le projet ADEPT, dirigé par l’EPCC de l’Université d’Edinburgh, cherche à formaliser, en fonction de la couche matérielle sous-jacente, les niveaux de consommation électrique des applications fortement parallèles. L’idée, c’est qu’avec un profiling précis de la consommation du code, de nouveaux process de déploiements applicatifs sur les clusters pourraient être envisagés. Une des pistes généralement étudiée consiste à distribuer le calcul de façon optimale sur des calculateurs moyennement ou fortement hybrides (alliant selon le cas CPU x86, processeurs ARM, GPU et FPGA) puis, à partir des éléments de métrologie disponibles, d’aiguiller l’exécution sur les nœuds pertinents.

C’est également dans cette approche que s’inscrit le projet européen CRESTA (Collaborative Research into Exascale Systemware, Tools and Applications). Avec l’exascale officiellement en ligne de mire, cette initiative fédère des éditeurs, des constructeurs et des centres d’enseignement supérieur spécialisés – en tout treize partenaires, de Cray à Centrale Paris. L’originalité, ici, réside dans le fait que les recherches portent autant sur l’outillage purement logiciel que sur les grands domaines applicatifs du HPC. D’un côté, on se préoccupe des IDE, des débogueurs, des bibliothèques fonctionnelles et des outils de pré et post processing. De l’autre, on s’applique à identifier des voies d’optimisation propres aux code d’engineering, de simulation nucléaire, de prévision météo, de physiologie humaine virtuelle et de dynamique moléculaire. Pour que, le moment venu, les bonnes pratiques soient applicables directement…

Au terme de ce dossier, une conclusion s’impose : si l’objectif est clair, la stratégie pour y parvenir l’est beaucoup moins. On peut être confiant et penser que des ruptures technologiques – dont les plus probables ont été évoquées – résoudront l’équation énergétique de la prochaine échelle, même si cela nous projette au-delà de 2020. On peut aussi rester pragmatique et considérer que la combinaison des efforts matériels, logiciels, applicatifs et d’infrastructure, si elle n’atteint pas le degré d’efficacité souhaité, rendra de toutes façons les calculateurs de demain plus “soutenables”…

[Cet article fait partie du dossier Efficacité énergétique : Le St Graal du calcul intensif]

[En détails]

“La pile logicielle recèle d’importantes économies énergétiques potentielles”

Les recherches en cours dans les laboratoires Exascale d’Intel en France, en Belgique et en Espagne ont vocation à identifier des modes d’action logiciels orientés vers l’optimisation de la consommation électrique des calculateurs. A ces travaux s’ajoutent ceux du laboratoire de Jülich, en Allemagne, autour du projet d’architecture DEEP, qui abordent la question sous un angle plus systémique. De l’ensemble, il ressort que la pile logicielle peut impacter sensiblement l’efficacité énergétique du calcul. Plusieurs voies sont d’ores et déjà identifiées :

i) le power capping, qui garantit le maximum de résultats dans une enveloppe énergétique donnée ;

ii) l’utilisation d’un profil de consommation énergétique obtenu au préalable, à partir duquel on va pouvoir moduler en temps quasi réel la fréquence ou l’utilisation de la mémoire, avec une dégradation des performances minimale ;

iii) l’équilibrage continu des tâches en cours d’exécution, grâce auquel on veille à ce que les tâches rapides ne soient pas pénalisées par les tâches plus lentes en attendant – donc en consommant des Watts inutiles – que des données leur soient transmises ou que les cœurs downclockés aient terminé ;

iv) l’ordonnancement optimal des phases de calcul et de transfert des données.

Nous envisageons collectivement d’accroître les activités de recherche et de validation sur ces sujets dès l’an prochain, en travaillant sur les applications les plus représentatives de la simulation et de l’analyse de données. Rendez-vous donc l’année prochaine pour un bilan d’étape sur les progrès accomplis…

Marie-Christine Sawley
Directrice du Laboratoire Intel ECR, Bruyères-le-Châtel.

© HPC Today 2024 - All rights reserved.

Thank you for reading HPC Today.

Express poll

Do you use multi-screen
visualization technologies?

Industry news

Brands / Products index