151 research outputs found

    Evaluation et amélioration des performances d'une implémentation MPI pour la grille

    Get PDF
    Les applications parallèles utilisent généralement le standard MPI pour réaliser leurs communications. La plupart des implémentations de MPI sont destinées aux grappes homogènes. Avec l'apparition des grilles de calcul, il est nécessaire de faire évoluer ces implémentations pour les adapter efficacement aux contraintes de ces nouvelles plateformes que sont la gestion de l'hétérogénéité et la prise en compte des liens réseau longue distance permettant l'interconnexion des sites de la grille. Aucune implémentation actuelle ne prend en compte efficacement ces deux paramètres. Après une étude des implémentations existantes, cet article analyse le comportement sur la grille de l'une d'entre elles, MPICH-Madeleine, qui propose une gestion efficace de l'hétérogénéité des réseaux rapides de grappe. A partir de nos premières expérimentations, nous proposons des optimisations permettant d'améliorer les performances d'exécution sur la grille. Elles nous ont permis d'augmenter très sensiblement la bande passante lors de l'exécution d'un ping-pong MPI : en passant de 95Mb/s à 600Mb/s sur la longue distance. Les expérimentations ont été réalisées sur la grille française Grid'5000

    Evaluation et amélioration des performances d'une implémentation MPI pour la grille

    Get PDF
    Les applications parallèles utilisent généralement le standard MPI pour réaliser leurs communications. La plupart des implémentations de MPI sont destinées aux grappes homogènes. Avec l'apparition des grilles de calcul, il est nécessaire de faire évoluer ces implémentations pour les adapter efficacement aux contraintes de ces nouvelles plateformes que sont la gestion de l'hétérogénéité et la prise en compte des liens réseau longue distance permettant l'interconnexion des sites de la grille. Aucune implémentation actuelle ne prend en compte efficacement ces deux paramètres. Après une étude des implémentations existantes, cet article analyse le comportement sur la grille de l'une d'entre elles, MPICH-Madeleine, qui propose une gestion efficace de l'hétérogénéité des réseaux rapides de grappe. A partir de nos premières expérimentations, nous proposons des optimisations permettant d'améliorer les performances d'exécution sur la grille. Elles nous ont permis d'augmenter très sensiblement la bande passante lors de l'exécution d'un ping-pong MPI : en passant de 95Mb/s à 600Mb/s sur la longue distance. Les expérimentations ont été réalisées sur la grille française Grid'5000

    XtremWeb : une plate-forme de recherche sur le calcul global et pair à pair

    No full text
    ISBN 274620472XLa connection à grande échelle des ordinateurs aux réseaux de communication et les mécanismes qui permettent leur interopérabilité (standardisation des protocoles, homogénéisation des formats d'échange, systèmes de nomage efficace, sécurisation des sites) motivent des tentatives de globalisation des ressources et des données à partir de systèmes de Calcul Global, Pair à Pair ou de GRID. Ces systèmes sont les prémisses de l'émergence de systèmes d'exploitation à grande échelle. Dans cet article nous proposons d'abord de situer les systémes Pair à Pair par rapport aux autres structures de GRID en soulignant leur différences qui ont principalement une origine historique. Dans une deuxième partie nous présentons une ratio- nalisation des systémes de Calcul Global et Pair à Pair. Nous détaillons ensuite la plate-forme XtremWeb qui constitue l'une des premières tentatives de généralisation du concept de parité entre les ressources appliqué à la globalisation du processeur, de la mémoire et du stockage. Nous terminons par la présentation de quelques points durs en recherche : la sécurisation des participants et la communication inter-noeud

    Contribution à la conception à base de composants logiciels d'applications scientifiques parallèles

    Get PDF
    La conception d'applications scientifiques à base de couplage de code est une tâche complexe car elle demande de concilier une facilité de programmation et une obtention de haute performance. En outre, les ressources matérielles (supercalculateurs, grappes de calcul, grilles) permettant leur exécution forment un ensemble hétérogène en constante évolution. Les modèles à base de composants logiciels forment une piste prometteuse pour gérer ces deux sources de complexité car ils permettent d exprimer les interactions entre les différents constituants d une application tout en offrant des possibilités d'abstraction des ressources. Néanmoins, les modèles existants ne permettent pas d'exprimer de manière satisfaisante les applications constituées de motifs répliqués dynamiques et hiérarchiques. Ainsi, cette thèse vise à améliorer l'existant et en particulier la plate-forme générique de simulation numérique SALOME pour une classe d'applications très répandue : les applications à base de décomposition de domaine et la variante utilisant le raffinement de maillage adaptatif. Tout d'abord, nous avons proposé d étendre le modèle de composition spatial et temporel de SALOME en ajoutant la possibilité de définir dynamiquement la cardinalité des composants. Cela demande en particulier de gérer les communications de groupes ainsi induites. La proposition a été implémentée dans SALOME et validée via une application de décomposition de domaine à base de couplage de plusieurs instances de Code_Aster. Ensuite, nous avons étudié la pertinence d'utiliser un modèle de composant supportant des connecteurs natifs (MPI, mémoire partagée, appel de méthode) pour permettre une composition plus fine des interactions entre composants. Les résultats d'expériences montrent que des performances équivalentes aux versions natives sont obtenues tout en permettant de manipuler facilement l'architecture de l'application. Enfin, nous avons étudié les extensions nécessaires aux modèles à composants (abstraction,hiérarchie, dynamicité) pour la conception d applications de raffinement de maillage adaptatif. Les modèles de composants spatio-temporels les plus avancés permettent ainsi d'exprimer ce type d'application mais les performances sont limitées par leur mise en œuvre centralisée ainsi que par le manque de moyens efficaces pour modifier à la volée des assemblages de composants.Designing scientific applications based on code coupling is a complex task. It requires both an easy programming process and high-performance. In addition, execution resources (supercomputers, computer clusters, grids) are heterogeneous and constantly evolving. Software components models offer a promising perspective to manage this double complexity because they can express interactions between the different parts of an application while providing abstraction of resources. However, existing models cannot accurately express the applications made of dynamic and hierarchical patterns. The aim of this thesis is to improve the existing models, and in particular the generic platform for numerical simulation SALOME, for a class of widespread applications : applications based on domain decomposition, and its dynamic variant using adaptive mesh refinement. Firstly, we proposed to extend the spatial and temporal composition model provided by SALOME, by adding the ability to dynamically set component cardinality. This requires in particular to manage group communications induced. The proposal has been implemented into SALOME and validated via a domain decomposition application based on coupling several instances of Code_Aster.Then, we have studied the relevance of using a component model supporting native connectors (MPI, shared memory, method invocation), in order to allow finer composition interactions between components.The experiment results show that performances obtained are equivalent to those of the native versions, while allowing to easily manipulate the application architecture. Finally, we studied the necessary component models extensions (abstraction, hierarchy, dynamicity) for designing adaptative mesh refinement applications. The most advanced spatio-temporal component models can express this type of application but performances are limited by their centralized implementation and by the lack of efficient ways of modifying component assembling at execution time.LYON-ENS Sciences (693872304) / SudocSudocFranceF

    Placement d'applications parallèles en fonction de l'affinité et de la topologie

    Get PDF
    Computer simulation is one of the pillars of Sciences and industry. Climate simulation,cosmology, or heart modeling are all areas in which computing power needs are constantlygrowing. Thus, how to scale these applications ? Parallelization and massively parallel supercomputersare the only ways to do achieve. Nevertheless, there is a price to pay consideringthe hardware topologies incessantly complex, both in terms of network and memoryhierarchy. The issue of data locality becomes central : how to reduce the distance betweena processing entity and data to which it needs to access ? Application placement is one ofthe levers to address this problem. In this thesis, we present the TreeMatch algorithmand its application for static mapping, that is to say at the lauchtime of the application,and the dynamic placement. For this second approach, we propose the awareness of datalocality within a load balancing algorithm. The different approaches discussed are validatedby experiments both on benchmarking codes and on real applications.La simulation numérique est un des piliers des Sciences et de l’industrie. La simulationmétéorologique, la cosmologie ou encore la modélisation du coeur humain sont autantde domaines dont les besoins en puissance de calcul sont sans cesse croissants. Dès lors,comment passer ces applications à l’échelle ? La parallélisation et les supercalculateurs massivementparallèles sont les seuls moyens d’y parvenir. Néanmoins, il y a un prix à payercompte tenu des topologies matérielles de plus en plus complexes, tant en terme de réseauque de hiérarchie mémoire. La question de la localité des données devient ainsi centrale :comment réduire la distance entre une entité logicielle et les données auxquelles elle doitaccéder ? Le placement d’applications est un des leviers permettant de traiter ce problème.Dans cette thèse, nous présentons l’algorithme de placement TreeMatch et ses applicationsdans le cadre du placement statique, c’est-à-dire au lancement de l’application, et duplacement dynamique. Pour cette seconde approche, nous proposons la prise en comptede la localité des données dans le cadre d’un algorithme d’équilibrage de charge. Les différentesapproches abordées sont validées par des expériences réalisées tant sur des codesd’évaluation de performances que sur des applications réelles

    Évolution de MadMPI vers MPI-3 : Opérations Unilatérales

    Get PDF
    International audienceMadMPI is a MPI implementation based on the NewMadeleine communication library. Based on Pioman, this library uses threads opportunistically in order to provide good overlap properties, with an asynchronous message management. So far, MadMPI offered an MPI implementation up to the MPI-2 standard. The asynchronous properties offered by NewMadeleine led naturally to the add of Remote Memory Accesses (RMA), which as been introduced in MPI-2, and enriched in the MPI-3 standard. This document present the work done to enrich MadMPI with RMA operation, as part of an internship in the TaDAAM team during the first half of 2016. It presents details of the RMA implementation, the problems faced and the solutions we used, and finally the results, compared to two classical MPI implementations: MVAPICH and Open-MPI.MadMPI est une implémentation MPI basée sur la bibliothèque de communication NewMadeleine. Cette bibliothèque utilise les processus légers de façon opportuniste grâce à la bibliothèque Pioman, ce qui lui permet d'avoir de bonne propriétés de recouvrement des communications par le calcul, ainsi qu'une gestion asynchrone des messages. La bibliothèque offrait jusqu'à présent une implémentation MPI de la norme MPI-2. Les prorpiétés d'asynchronisme proposées par NewMadeleine mena naturellement à l'ajout des opérations unilatérales (RMA pour Remote Memory Access) qui furent introduitent dans la norme MPI-2 et enrichies dans la norme MPI-3. Ce document présente le travail réalisé afin d'ajouter les opérations RMA dans la bibliothèque MadMPI, lequel fut effectué durant un stage de fin d'étude d'ingénieur réalisé durant la première moitié de l'année 2016. Le document présente les détails de l'implémentation des opération unilatérales, les problèmes rencontrés et les solution apportées, et et enfin les résultats obtenus. Ces résultats sont aussi comparés à ceux obtenus avec des implémentations plus répendues: MVAPICH et Open-MPI

    Opérations collectives dynamiques dans StarPU / NewMadeleine

    Get PDF
    International audienc

    Programmation sûre de plates-formes embarquées de type multi/pluri-cœurs

    Get PDF
    The purpose of this document is to describe an overview of my work on the topic of "programming mutli/many-core COTS in the context of aeronautics" and to propose future research work.L’objectif de ce document est de décrire une synthèse des travaux que j’ai menés autour du thème de "la programmation sûre de plates-formes embarquées" et de proposer des perspectives de recherche pour les années à venir
    corecore