Athapascan-0b: efficient and portable integration of communications and multithreading
Athapascan-0b : intégration efficace et portable de multiprogrammation légère et de communications
Résumé
Athapascan-0b is a multithreaded parallel programming runtime system. It is designed to support portable development and efficient execution of irregular applications on a large number of architectures. This document starts by presenting the framework in which Athapascan-0b is inscribed, that is communications, multithreading and the integration of these two aspects. Then the concepts of Athapascan-0b are described as well as its application programming interface. The major difficulties in integrating communications and multithreading are mentioned, the implementation of Athapascan-0b is described and more precisely the implementation choice, consisting in the use of existing communication and multithreading libraries. The performance of Athapascan-0b is then evaluated and compared to the performance of the underlying libraries. The execution of some toy programs is analyzed for a better understanding of the mechanisms involved. Athapascan-0b is a multithreaded parallel programming runtime system. It is designed to support portable development and efficient execution of irregular applications on a large number of architectures. This document starts by presenting the framework in which Athapascan-0b is inscribed, that is communications, multithreading and the integration of these two aspects. Then the concepts of Athapascan-0b are described as well as its application programming interface. The major difficulties in integrating communications and multithreading are mentioned, the implementation of Athapascan-0b is described and more precisely the implementation choice, consisting in the use of existing communication and multithreading libraries. The performance of Athapascan-0b is then evaluated and compared to the performance of the underlying libraries. The execution of some toy programs is analyzed for a better understanding of the mechanisms involved.
Athapascan-0b est un noyau exécutif pour machines parallèles supportant la multiprogrammation légère. Athapascan-0b permet un développement portable d'applications parallèles irrégulières et une exécution efficace de celles-ci sur un grand nombre de plates-formes. Ce document commence par la présentation du cadre dans lequel s'inscrit Athapascan-0b, à savoir les communications, la multiprogrammation légère et l'intégration de ces deux fonctionnalités. Sont ensuite présentes les concepts structurant Athapascan-0b ainsi que son interface de programmation. La problématique d'une intégration de communications et de multiprogrammation légère est posée, la réalisation d'Athapascan-0b est décrite et plus précisement le choix d'implantation, à savoir un mariage de bibliothèques existantes de multiprogrammation légère et de communications. Enfin, la performance d'Athapascan-0b est evaluée, comparée à la performance des bibliothèques au dessus desquelles il a été développé. L'exécution de quelques exemples est analysée afin de mieux comprendre les mécanismes en jeu.