Squelettes algorithmiques pour la programmation et l'exécution efficaces de codes parallèles

Les architectures parallèles sont désormais présentes dans tous les matériels informatiques, mais les programmeurs ne sont généralement pas formés à leur programmation dans les modèles explicites tels que MPI ou les Pthreads. Il y a un besoin important de modèles plus abstraits tels que les squelett...

Ful tanımlama

Kaydedildi:
Detaylı Bibliyografya
Yazar: Legaux, Joeffrey
Diğer Yazarlar: Loulergue, Frédéric, 1973- (Tez danışmanı, Muarız)
Materyal Türü: Thèse numérique
Dil:Français
Baskı/Yayın Bilgisi: 2013.
Konular:
Online Erişim:Accès au texte intégral
https://theses.univ-orleans.fr/public/2013ORLE2073_vm.pdf
http://www.theses.fr/2013ORLE2073/abes
https://theses.hal.science/tel-00990852
Not: Titre provenant de l'écran-titre
Ecole(s) Doctorale(s) : École doctorale Mathématiques, Informatique, Physique Théorique et Ingénierie des Systèmes (Centre-Val de Loire ; 2012-....)
Partenaire(s) de recherche : Laboratoire d'informatique fondamentale d'Orléans (Orléans ; 1987-....) (Equipe de recherche), Laboratoire d'Informatique Fondamentale d'Orléans (Laboratoire)
Autre(s) contribution(s) : Stéphane Vialle (Président du jury) ; Frédéric Loulergue, Stéphane Vialle, Herbert Kuchen, Marco Danelutto, Sébastien Limet, Joël Falcou, Sylvain Jubertie (Membre(s) du jury) ; Herbert Kuchen, Marco Danelutto (Rapporteur(s))
Autres localisations: Voir dans le Sudoc
Variante du titre:Algorithmic skeletons for efficient programming and execution of parallel codes
Diğer Bilgiler
Özet:Les architectures parallèles sont désormais présentes dans tous les matériels informatiques, mais les programmeurs ne sont généralement pas formés à leur programmation dans les modèles explicites tels que MPI ou les Pthreads. Il y a un besoin important de modèles plus abstraits tels que les squelettes algorithmiques qui sont une approche structurée. Ceux-ci peuvent être vus comme des fonctions d ordre supérieur synthétisant le comportement d algorithmes parallèles récurrents que le développeur peut ensuite combiner pour créer ses programmes. Les développeurs souhaitent obtenir de meilleures performances grâce aux programmes parallèles, mais le temps de développement est également un facteur très important. Les approches par squelettes algorithmiques fournissent des résultats intéressants dans ces deux aspects. La bibliothèque Orléans Skeleton Library ou OSL fournit un ensemble de squelettes algorithmiques de parallélisme de données quasi-synchrones dans le langage C++ et utilise des techniques de programmation avancées pour atteindre une bonne efficacité. Nous avons amélioré OSL afin de lui apporter de meilleures performances et une plus grande expressivité. Nous avons voulu analyser le rapport entre les performances des programmes et l effort de programmation nécessaire sur OSL et d autres modèles de programmation parallèle. La comparaison rigoureuse entre des programmes parallèles dans OSL et leurs équivalents de bas niveau montre une bien meilleure productivité pour les modèles de haut niveau qui offrent une grande facilité d utilisation tout en produisant des performances acceptables.
Parallel architectures have now reached every computing device, but software developers generally lackthe skills to program them through explicit models such as MPI or the Pthreads. There is a need for moreabstract models such as the algorithmic skeletons which are a structured approach. They can be viewed ashigher order functions that represent the behaviour of common parallel algorithms, and those are combinedby the programmer to generate parallel programs. Programmers want to obtain better performances through the usage of parallelism, but the development time implied is also an important factor. Algorithmic skeletons provide interesting results in both those fields. The Orléans Skeleton Library or OSL provides a set of algorithmic skeletons for data parallelism within the bulk synchronous parallel model for the C++ language. It uses advanced metaprogramming techniques to obtain good performances. We improved OSL in order to obtain better performances from its generated programs, and extended its expressivity. We wanted to analyze the ratio between the performance of programs and the development effort needed within OSL and other parallel programming models. The comparison between parallel programs written within OSL and their equivalents in low level parallel models shows a better productivity for high level models : they are easy to use for the programmers while providing decent performances.
Diğer Bilgileri:Titre provenant de l'écran-titre
Ecole(s) Doctorale(s) : École doctorale Mathématiques, Informatique, Physique Théorique et Ingénierie des Systèmes (Centre-Val de Loire ; 2012-....)
Partenaire(s) de recherche : Laboratoire d'informatique fondamentale d'Orléans (Orléans ; 1987-....) (Equipe de recherche), Laboratoire d'Informatique Fondamentale d'Orléans (Laboratoire)
Autre(s) contribution(s) : Stéphane Vialle (Président du jury) ; Frédéric Loulergue, Stéphane Vialle, Herbert Kuchen, Marco Danelutto, Sébastien Limet, Joël Falcou, Sylvain Jubertie (Membre(s) du jury) ; Herbert Kuchen, Marco Danelutto (Rapporteur(s))
Materyal Türü:Configuration requise : un logiciel capable de lire un fichier au format : PDF