JDEV 2013 (5/7) – Bibliothèques pour le calcul scientifique
By   |  November 30, 2013

Philippe d’Anfray, CEA ;
Thien-Hiep Lé, ONERA.

 
(Cet article fait partie de notre dossier JDEV 2013 : Développer pour calculer)
 
Au départ, les bibliothèques scientifiques sont souvent développées dans le cadre de projets plus généraux. Une bibliothèque peut cependant évoluer et se transformer en projet à part entière. C’est généralement le cas lorsqu’elle est devenue l’outil de travail principal d’une équipe ou qu’une communauté d’utilisateurs externes s’est constituée.

De fait, la disponibilité de paquetages logiciels performants, validés et maintenus est un des éléments qui permettent la cristallisation de projets scientifiques dans de nombreux domaines applicatifs (aérodynamique, climat, matériaux, chimie…) mais également le maintien d’un savoir faire partagé par des acteurs d’horizons très variés. Il s’agit là d’un point clé pour l’interdisciplinarité.

Les bibliothèques logicielles scientifiques sont également devenues des composants majeurs des grands codes de simulation. Au point qu’elles jouent souvent le rôle de portes d’accès au calcul haute performance (HPC).

Forts de ces constats, les échanges de notre groupe de travail aux JDEV 2013 se sont articulés autour d’une présentation basée – entre autres sources – sur les exposés et discussions qui ont eu lieu lors du séminaire Bibliothèques pour le calcul scientifique : outils, enjeux et écosystème organisé par l’Association Aristote en mai 2013. A l’instar du “logo-rallye” oulipien, cette présentation propose de passer en revue un certain nombre de bibliothèques pour mettre en valeur leurs spécificités et susciter ainsi des réactions et des débats entre les participants. Parmi les questions qui se posent généralement :

– quels sont les “éléments moteurs” du projet (les algorithmes, la performance, le domaine d’application…) et ses cibles ?

– quelles sont les évolutions en cours ou prévues ?

– comment inscrire ce type de projet dans la durée (au-delà d’un financement initial par exemple) ?

– peut-on parler d’une spécificité liée à ce travail de développement logiciel et peut on compter sur une reconnaissance des pairs, des organismes concernés, etc. ?

– comment diffuser, quid de l’Open Source et de la propriété intellectuelle, quelles licences choisir… ?

– comment constituer et gérer une communauté d’utilisateurs, pour quelles attentes, avec quels services et quels retours ?

Hormis les “trois piliers” (Physique, Informatique, Mathématiques) que nous n’oublions pas, la question de la communauté d’utilisateurs est évidemment le point clé. Il y a un moment où, pour reprendre l’expression de Patrick Moreau de l’INRIA, “la corde se tend” : les développeurs se trouvent face à des demandes (maintenance, développements, etc.) qu’il faut gérer et surtout anticiper.

Le choix d’une licence ou l’hypothétique création d’un consortium sont typiquement des éléments à évoquer bien avant que cette question ne se pose ! Mais il y a plus complexe : comment justifier, valoriser, financer… donc in fine faire vivre un projet qui dépasse nécessairement les missions d’une équipe ou d’un laboratoire et doit s’inscrire sur le long terme (nous parlons ici de 15 à 20 ans, voire quelquefois plus).

Suite à cet atelier a donné lieu, suite à un travail de plus grande ampleur mené notamment au sein d’Aristote, ces problématiques (et beaucoup d’autres) seront abordées le mois prochain dans ces colonnes, avec un article plus approfondi dédié à l’écosystème des bibliothèques pour le calcul scientifique. Ne le manquez pas !

Pour aller plus loin : http://devlog.cnrs.fr/jdev2013/t7a5
 
(Dossier JDEV 2013 : Développer pour calculer : article précédent | suivant)

© 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