Task based progression of asynchronous communications - Archive ouverte HAL Access content directly
Poster Communications Year :

Task based progression of asynchronous communications

Progression à base de tâches des communications asynchrones

(1, 2)
1
2

Abstract

Dans le monde du HPC, les communications jouent un rôle de premier plan sur les perfor- mances des applications. L’une des solutions mise en œuvre pour réduire leur impact a été la création de communications non bloquantes asynchrones. Celles ci permettent de recouvrir les communications par du calcul. Les nœuds n’attendent plus la totalité du déroulement de la communication, contrairement à un appel bloquant. Ici, le code continue son exécution jusqu’à une demande explicite d’attente de la terminaison. L’utilisation de ce type de communications permet de gagner un précieux temps de calcul. Cependant, gérer efficacement la progression des communications en parallèle reste un véritable enjeu, notamment pour les communica- tions collectives. L’une des solutions envisagée passe par l’utilisation de tâches pour gérer cette progression. Les tâches, par rapport à un thread dédié, permettent plus de souplesse en ré- partissant les communications sur les processeurs libres. Nous proposons l’implémentation de collectives non bloquantes dans la bibliothèque de communication NewMadeleine, ainsi que dans le framework MPC. NewMadeleine a été conçue pour des communications point à point asynchrones non bloquantes. De plus, elle s’appuie sur le gestionnaire d’entrées/sorties PIO- Man, qui gère l’ensemble des requêtes à l’aide de tâches. Lors d’un travail préliminaire, nous avons implémenté un moteur de tâches dans l’ordonnanceur de MPC comme base pour ces communications. L’ajout de collectives non bloquantes basées sur des tâches implique de se pencher sur différentes problématiques. Ces collectives sont conçues pour être utilisées par un ensemble de nœuds et sont plus complexes au niveau algorithmique que de simples com- munications point-à-point. Leurs utilisation demande aussi plus de ressources CPU. Il nous faut donc déterminer les conséquences de l’exécution en parallèle du code de progression et des calculs. Nous cherchons à observer les effets de placement des tâches de communication. Nous etudierons donc l’impact de la cohabitation des calculs et des tâches de progression au sein d’un même cœur, que ce soit sur les caches de données ou sur les temps de calcul. Nous analyserons aussi le cas de coeurs dédiés aux communications, et les conséquences de cette réservation de ressources sur ces mêmes calculs.
Fichier principal
Vignette du fichier
compas2019_final.pdf (297.77 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-02407276 , version 1 (12-12-2019)

Identifiers

  • HAL Id : hal-02407276 , version 1

Cite

Florian Reynier. Progression à base de tâches des communications asynchrones. COMPAS 2019 - Conférence d'informatique en Parallélisme, Architecture et Système, Jun 2019, Anglet, France. ⟨hal-02407276⟩
71 View
79 Download

Share

Gmail Facebook Twitter LinkedIn More