Distributed and Parallel Programming Paradigms Using Graphs of Tasks for Post-Petascale Supercomputers - TEL - Thèses en ligne
Thèse Année : 2021

Distributed and Parallel Programming Paradigms Using Graphs of Tasks for Post-Petascale Supercomputers

Paradigmes de Programmation Répartie et Parallèle Utilisant des Graphes de Tâches pour Supercalculateurs Post-Pétascale

Résumé

Since the middle of the 1990s, message passing libraries are the most used technology to implement parallel and distributed applications. However, they may not be a solution efficient enough on exascale machines since scalability issues will appear due to the increase in computing resources. Task-based programming models can be used, for example, to avoid collective communications along all the resources like reductions, broadcast or gather by transforming them into multiple operations on tasks. Then, these operations can be scheduled by the scheduler to place the data and computations in a way that optimize and reduce the data communications. The main objective of this thesis is to study what must be task-based programming for scientific appli- cations and to propose a specification of such distributed and parallel programming, by experimenting for several simplified representations of important scientific applications for TOTAL, and classical dense and sparse linear methods. During the dissertation, several programming languages and paradigms are studied. Dense linear methods to solve linear systems, sequences of sparse matrix vector product and the Kirch- hoff seismic pre-stack depth migration are studied and implemented as task-based applications. A taxonomy, based on several of these languages and paradigms is proposed. Software were developed using these program- ming models for each simplified application. As a result of these researches, a methodology for parallel task programming is proposed, optimizing data movements, in general, and for targeted scientific applications, in particular.
Depuis le milieu des années 1990, les bibliothèques de transmission de messages sont les technologies les plus utilisées pour développer des applications parallèles et distribuées. Des modèles de programmation basés sur des tâches peuvent être utilisés, par exemple, pour éviter les communications collectives sur toutes les ressources comme les réductions, les diffusions ou les rassemblements en les transformant en multiples opérations avec des tâches. Ensuite, ces opérations peuvent être planifiées par l’ordonnanceur pour placer les données et les calculs de manière à optimiser et réduire les communications de données. L’objectif principal de cette thèse est d’étudier ce que doit être la programmation basée sur des tâches pour des applications scientifiques et de proposer une spécification de cette programmation distribuée et paral- lèle, en expérimentant avec plusieurs représentations simplifiées d’applications scientifiques importantes pour TOTAL, et de méthodes linéaire classique dense et creuses. Au cours de la thèse, plusieurs langages de pro- grammation et paradigmes sont étudiés. Des méthodes linéaires denses pour résoudre des systèmes linéaires, des séquences de produit matrice vecteur creux et la migration sismique en profondeur pré-empilement de Kirchhoff sont étudiées et implémentées en tant qu’applications basées sur des tâches. Une taxonomie, basée sur plusieurs de ces langages et paradigmes est proposée. Des logiciels ont été développés en utilisant ces modèles de programmation pour chaque application simplifiée. À la suite de ces recherches, une méthodologie pour la programmation de tâches parallèles est proposée, optimisant les mouvements de données en général et, en particulier, pour des applications scientifiques ciblées.
Fichier principal
Vignette du fichier
phd_dissertation_cover.pdf (6.32 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-03354122 , version 1 (30-07-2021)
tel-03354122 , version 2 (24-09-2021)

Identifiants

  • HAL Id : tel-03354122 , version 1

Citer

Jérôme Gurhem. Distributed and Parallel Programming Paradigms Using Graphs of Tasks for Post-Petascale Supercomputers. Distributed, Parallel, and Cluster Computing [cs.DC]. Université de Lille, 2021. English. ⟨NNT : ⟩. ⟨tel-03354122v1⟩
251 Consultations
463 Téléchargements

Partager

More