Sujet : Gestion des communications centrée sur les accès mémoire à distance

Responsables : Alexandre Denis et Emmanuel Jeannot
Téléphones : 05.24.57.41.14
Courriels : Alexandre.Denis@inria.fr

Présentation du sujet :


L'émergence des processeurs multi-coeurs a radicalement changé la physionomie des machines courantes et des grappes de calcul. Désormais les noeuds de calcul sont dotés courament de plus de dix coeurs. Cette tendance à l'augmentation du nombre de coeurs par noeud est nette et semble durable, avec l'annonce récente d'Intel de la prochaine génération de Xeon Phi Knights Landing dotée de 72 coeurs et qui sera utilisable en tant que processeur principal. À l'avenir, les machines de calcul seront massivement multi-coeur.

Le domaine des cartes réseau haute-performance subit également des évolutions importantes. Le paradigme de communication dominant est longtemps resté la réception explicite, dite également send/recv. Avec l'émergence et maintenant la domination de la technologie InfiniBand, le modèle le plus répandu est désormais le RDMA, à savoir l'accès mémoire à distance. Dans ce modèle, il est possible d'accéder directement en lecture ou en écriture à la mémoire d'un noeud distant, sans action de sa part.

Ces évolutions du matériel ont d'énormes répercussions sur le logiciel, et en particulier sur la gestion des communications. En effet, même si certains noeuds sont désormais équipés de plusieurs cartes réseaux, elles sont en tout état de cause en nombre bien plus restreint que le nombre de coeurs. L'accès au réseau est donc source de contention, qui va aller en s'aggravant à mesure que le nombre de coeurs augmente. Le changement de paradigme des communications réseau a également des répercussions sur la gestion des communication. En effet, s'il est actuellement courant d'écrire des pilotes qui simulent un mode send/recv sur un réseau nativement RDMA, ceci a un impact sur les performances. Il nous semble opportun d'envisager une bibliothèque de communications nativement RDMA de bout en bout, pour tirer pleinenement profit des performances, d'autant plus que les interfaces de niveau utilisateurs adoptent désormais également le paradigme one-sided.

Nous avons proposé la bibliothèque NewMadeleine, capable de tirer profit des flux de communications parallèles issus de différents threads, en appliquant une stratégie d'optimisation à la volée sur les séquences de paquets. En s'appuyant sur la bibliothèque d'ordonnancement de tâches d'E/S PIOMan, elle est par ailleurs capable de paralléliser la progression des communications. En revanche, aussi bien la stratégie d'optimisation que l'ordonnancement des tâches reposent sur la connaissance d'un état global de tous les paquets et toutes les tâches ordonnancées ou en cours. Cette approche globale, donc centralisée, est efficace sur un petit nombre de coeurs, mais atteint désormais ses limites avec le grand nombre de coeurs que l'on trouve dans les nouvelles architectures.

L'objet de ce sujet de mémoire de recherche est de s'intéresser aux problématiques posées à bas niveau dans la gestion des communications consécutivement aux évolutions des architectures vers un grand nombre de coeurs et un modèle réseau RDMA. En particulier, il s'agira pour l'étudiant de s'intéresser aux aspects suivants :

Mot-clés : MPI, réseau haute performance, RDMA, multicore


Commentaires : Les travaux réalisés dans le cadre de ce sujet de mémoire sont susceptibles de déboucher sur une thèse.


Références :