# Interruptions en espace utilisateur depuis le réseau BXI pour le recouvrement calcul/communications

Charles Goedefroit, Mathieu Barbe, Alexandre Denis, Brice Goglin, Grégoire Pichon

<figure><img src="image_1.png" /></figure>

## To cite this version:

Charles Goedefroit, Mathieu Barbe, Alexandre Denis, Brice Goglin, Grégoire Pichon. Interruptions en espace utilisateur depuis le réseau BXI pour le recouvrement calcul/communications. COMPAS 2025 - Conférence francophone d'informatique en Parallélisme, Architecture et Système, Jun 2025, Bordeaux, France. hal-05085582

HAL Id: hal-05085582

https://inria.hal.science/hal-05085582v1

Submitted on 27 May 2025

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Interruptions en espace utilisateur depuis le réseau BXI pour le recouvrement calcul/communications

Charles Goedefroit (Eviden, Univ. Bordeaux), Mathieu Barbe (Eviden), Alexandre Denis (Inria, Univ. Bordeaux), Brice Goglin (Inria, Univ. Bordeaux), Grégoire Pichon (Eviden)

Site Iseran d'Eviden,
3 Rue de Provence,
38130 Échirolles - France
charles.goedefroit@eviden.com

## Résumé

En HPC, les supercalculateurs sont composés de noeuds interconnectés par un réseau haute performance, comme par exemple le réseau BXI [4] d'Eviden. La carte BXI exécute la plupart des tâches de communications par elle-même; cependant, l'application doit être prévue de l'arrivée de messages. Pour celà, elle peut utiliser une scrutation ou des interruptions. Pour maximiser le temps dédié au calcul, il est préférable d'éviter la scrutation. Un mécanisme d'interruptions qui traite les évènements puis retourne au calcul évite les appels inutiles. En revanche, les réseaux haute performance se programment depuis l'espace utilisateur pour éviter le coût des appels systèmes. Or, un mécanisme d'interruption classique [6, 7] passe par le noyau, ce que l'on cherche à éviter. Le mécanisme d'interruptions en espace utilisateur (UINTR[5]) est disponible sur certains processeurs récents. Cependant, seul l'envoi entre deux cœurs est disponible pour l'instant.

Notre contribution est un mécanisme qui permet de lever une interruption en espace utilisateur à partir d'un périphérique PCIe. Pour ce faire, nous utilisons le mécanisme *interrupt-posting* de l'IOMMU, qui n'est pas prévue pour les interruptions en espace utilisateur. Nous avons détourné le mécanisme pour transformer des interruptions classiques en interruptions en espace utilisateur. Nous avons également adapté la bibliothèque de communication Portals [2] ainsi que le module noyau BXI pour y ajouter le support des UINTR.

La latence est de 1.5µs pour la scrutation, de 3.6µs avec les interruptions en espace utilisateur et de 9µs avec les interruptions classiques. Pour évaluer le recouvrement des communications par du calcul, nous avons étendu la suite de bench overlap [3] en ajoutant un support direct des opérations de la spécification Portals 4, avec un mécanisme de rendez-vous basique simulant un protocole MPI. Nous observons un recouvrement mauvais en scrutation, et presque parfait avec les UINTR.

La suite de nos travaux porte sur l'intégration des interruptions en espace utilisateur dans la bibliothèque de communication NewMadeleine [1]
Bibliographie

1. Aumage (O.), Brunet (E.), Furmento (N.) et Namyst (R.). – *NewMadeleine* : a Fast Communication Scheduling Engine for High Performance Networks. – In *Workshop on Communication Architecture for Clusters (CAC 2007), workshop held in conjunction with IPDPS 2007, Long Beach, California, United States, mars 2007*.

2. Brightwell (R.), Schonbein (W.), Pedretti (K.), Hemmert (K. S.), Maccabe (A. B.), Grant (R. E.), Barrett (B. W.), Underwood (K.), Riesen (R.), Hoefler (T.), Barbe (M.), Suraty Filho (L. H.) et Ratchov (A.). – *The Portals 4.3 Network Programming Interface*. – Rapport technique, 6 2022.

3. Denis (A.) et Trahay (F.). – MPI Overlap : Benchmark and Analysis. – In *International Conference on Parallel Processing*, 45th *International Conference on Parallel Processing*, 45th International Conference on Parallel Processing, Philadelphia, United States, août 2016.

4. Derradji (S.), Palfer-Sollier (T.), Panziera (J.-P.), Poudes (A.) et Atos (F. W.). – The bxi inter-connect architecture. – In *2015 IEEE 23rd Annual Symposium on High-Performance Interconnects*, pp. 18–25, 2015.

5. Mehta (S.). – x86 user interrupts support. *Linux Weekly News*, sep 2021. – https://lwn.net/Articles/869140/ last visite 2024-04-11.

6. Perkovic (D.) et Keleher (P. J.). – Responsiveness without interrupts. – In *Proceedings of the 13th International Conference on Supercomputing, ICS '99*, ICS '99, p. 101–108, New York, NY, USA, 1999. Association for Computing Machinery.

7. Salah (K.), El-Badawi (K.) et Haidari (F.). – Performance analysis and comparison of interrupt-handling schemes in gigabit networks. *Computer Communications*, vol. 30, n 17, 2007, pp. 3425–3441. – Special Issue Concurrent Multipath Transport.