Contribution à l'élaboration d'environnements de programmation dédiés au calcul scientifique hautes performances

Abstract

Dans le cadre du calcul scientifique intensif, la quête des hautes performances se heurte actuellement à la complexité croissante des architectures des machines parallèles. Ces dernières exhibent en particulier une hiérarchie importante des unités de calcul et des mémoires, ce qui complique énormément la conception des applications parallèles. Cette thèse propose un support d’exécution permettant de programmer efficacement les architectures de type grappes de machines multiprocesseurs, en proposant un modèle de programmation centré sur les opérations collectives de communication et de synchronisation et sur l’équilibrage de charge. L’interface de programmation, nommée MPC, fournit des paradigmes de haut niveau qui sont implémentés demanière optimisée en fonction de l’architecture sous-jacente. L’environnement est opérationnel sur la plate-forme de calcul du CEA/ DAM (TERANOVA) et les évaluations valident la pertinence de l’approche choisie.In the field of intensive scientific computing, the quest for performance has to face the increasing complexity of parallel architectures. Nowadays, thesemachines exhibit a deepmemory hierarchy which complicates the design of efficient parallel applications. This thesis proposes a programming environment allowing to design efficient parallel programs on top of clusters of multiprocessors. It features a programming model centered around collective communications and synchronizations, and provides load balancing facilities. The programming interface, named MPC, provides high level paradigms which are optimized according to the underlying architecture. The environment is fully functional and used within the CEA/DAM(TERANOVA) computing center. The evaluations presented in this document confirm the relevance of our approach

    Similar works