Programmation des architectures hiérarchiques et hétérogènes.

Les architectures de calcul haute performance de nos jours sont des architectures hiérarchiques et hétérogènes: hiérarchiques car elles sont composées d'une hiérarchie de mémoire, une mémoire distribuée entre les noeuds et une mémoire partagée entre les coeurs d'un même noeud. Hétérogènes...

Full description

Bibliographic Details
Main Author: Hamidouche, Khaled
Language:FRE
Published: Université Paris Sud - Paris XI 2011
Subjects:
BSP
MPI
Online Access:http://tel.archives-ouvertes.fr/tel-00653203
http://tel.archives-ouvertes.fr/docs/00/65/32/03/PDF/VD2_Hamidouche.pdf
id ndltd-CCSD-oai-tel.archives-ouvertes.fr-tel-00653203
record_format oai_dc
spelling ndltd-CCSD-oai-tel.archives-ouvertes.fr-tel-006532032013-01-07T17:23:16Z http://tel.archives-ouvertes.fr/tel-00653203 2011PA112252 http://tel.archives-ouvertes.fr/docs/00/65/32/03/PDF/VD2_Hamidouche.pdf Programmation des architectures hiérarchiques et hétérogènes. Hamidouche, Khaled [INFO:INFO_OH] Computer Science/Other Outils et modèles de programmation parallèle haut niveau BSP Architectures hiérarchiques hybrides et hétérogènes Génération automatique Programmation parallèle MPI OpenMP Cell BE Les architectures de calcul haute performance de nos jours sont des architectures hiérarchiques et hétérogènes: hiérarchiques car elles sont composées d'une hiérarchie de mémoire, une mémoire distribuée entre les noeuds et une mémoire partagée entre les coeurs d'un même noeud. Hétérogènes due à l'utilisation des processeurs spécifiques appelés Accélérateurs tel que le processeur CellBE d'IBM et les CPUs de NVIDIA. La complexité de maîtrise de ces architectures est double. D'une part, le problème de programmabilité: la programmation doit rester simple, la plus proche possible de la programmation séquentielle classique et indépendante de l'architecture cible. D'autre part, le problème d'efficacité: les performances doivent êtres proches de celles qu'obtiendrait un expert en écrivant le code à la main en utilisant des outils de bas niveau. Dans cette thèse, nous avons proposé une plateforme de développement pour répondre à ces problèmes. Pour cela, nous proposons deux outils : BSP++ est une bibliothèque générique utilisant des templates C++ et BSPGen est un framework permettant la génération automatique de code hybride à plusieurs niveaux de la hiérarchie (MPI+OpenMP ou MPI + Cell BE). Basée sur un modèle hiérarchique, la bibliothèque BSP++ prend les architectures hybrides comme cibles natives. Utilisant un ensemble réduit de primitives et de concepts intuitifs, BSP++ offre une simplicité d'utilisation et un haut niveau d' abstraction de la machine cible. Utilisant le modèle de coût de BSP++, BSPGen estime et génère le code hybride hiérarchique adéquat pour une application donnée sur une architecture cible. BSPGen génère un code hybride à partir d'une liste de fonctions séquentielles et d'une description de l'algorithme parallèle. Nos outils ont été validés sur différentes applications de différents domaines allant de la vérification et du calcul scientifique au traitement d'images en passant par la bioinformatique. En utilisant une large sélection d'architecture cible allant de simple machines à mémoire partagée au machines Petascale en passant par les architectures hétérogènes équipées d'accélérateurs de type Cell BE. 2011-11-10 FRE PhD thesis Université Paris Sud - Paris XI
collection NDLTD
language FRE
sources NDLTD
topic [INFO:INFO_OH] Computer Science/Other
Outils et modèles de programmation parallèle haut niveau
BSP
Architectures hiérarchiques
hybrides et hétérogènes
Génération automatique
Programmation parallèle
MPI
OpenMP
Cell BE
spellingShingle [INFO:INFO_OH] Computer Science/Other
Outils et modèles de programmation parallèle haut niveau
BSP
Architectures hiérarchiques
hybrides et hétérogènes
Génération automatique
Programmation parallèle
MPI
OpenMP
Cell BE
Hamidouche, Khaled
Programmation des architectures hiérarchiques et hétérogènes.
description Les architectures de calcul haute performance de nos jours sont des architectures hiérarchiques et hétérogènes: hiérarchiques car elles sont composées d'une hiérarchie de mémoire, une mémoire distribuée entre les noeuds et une mémoire partagée entre les coeurs d'un même noeud. Hétérogènes due à l'utilisation des processeurs spécifiques appelés Accélérateurs tel que le processeur CellBE d'IBM et les CPUs de NVIDIA. La complexité de maîtrise de ces architectures est double. D'une part, le problème de programmabilité: la programmation doit rester simple, la plus proche possible de la programmation séquentielle classique et indépendante de l'architecture cible. D'autre part, le problème d'efficacité: les performances doivent êtres proches de celles qu'obtiendrait un expert en écrivant le code à la main en utilisant des outils de bas niveau. Dans cette thèse, nous avons proposé une plateforme de développement pour répondre à ces problèmes. Pour cela, nous proposons deux outils : BSP++ est une bibliothèque générique utilisant des templates C++ et BSPGen est un framework permettant la génération automatique de code hybride à plusieurs niveaux de la hiérarchie (MPI+OpenMP ou MPI + Cell BE). Basée sur un modèle hiérarchique, la bibliothèque BSP++ prend les architectures hybrides comme cibles natives. Utilisant un ensemble réduit de primitives et de concepts intuitifs, BSP++ offre une simplicité d'utilisation et un haut niveau d' abstraction de la machine cible. Utilisant le modèle de coût de BSP++, BSPGen estime et génère le code hybride hiérarchique adéquat pour une application donnée sur une architecture cible. BSPGen génère un code hybride à partir d'une liste de fonctions séquentielles et d'une description de l'algorithme parallèle. Nos outils ont été validés sur différentes applications de différents domaines allant de la vérification et du calcul scientifique au traitement d'images en passant par la bioinformatique. En utilisant une large sélection d'architecture cible allant de simple machines à mémoire partagée au machines Petascale en passant par les architectures hétérogènes équipées d'accélérateurs de type Cell BE.
author Hamidouche, Khaled
author_facet Hamidouche, Khaled
author_sort Hamidouche, Khaled
title Programmation des architectures hiérarchiques et hétérogènes.
title_short Programmation des architectures hiérarchiques et hétérogènes.
title_full Programmation des architectures hiérarchiques et hétérogènes.
title_fullStr Programmation des architectures hiérarchiques et hétérogènes.
title_full_unstemmed Programmation des architectures hiérarchiques et hétérogènes.
title_sort programmation des architectures hiérarchiques et hétérogènes.
publisher Université Paris Sud - Paris XI
publishDate 2011
url http://tel.archives-ouvertes.fr/tel-00653203
http://tel.archives-ouvertes.fr/docs/00/65/32/03/PDF/VD2_Hamidouche.pdf
work_keys_str_mv AT hamidouchekhaled programmationdesarchitectureshierarchiquesetheterogenes
_version_ 1716395873743667200