0% ont trouvé ce document utile (0 vote)
19 vues2 pages

Ingénierie Des Compétences: Syllabus HPC

Le syllabus du cours de Calcul Intensif (HPC) couvre les architectures parallèles, la programmation parallèle avec mémoire partagée et distribuée, ainsi que l'utilisation des GPU. Les étudiants apprendront à concevoir et analyser des programmes parallèles en utilisant des outils tels qu'OpenMP, MPI et CUDA. Le cours inclut des travaux pratiques et un projet de programmation parallèle, avec des références bibliographiques pour approfondir les connaissances.

Transféré par

baghdadi.absari
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
19 vues2 pages

Ingénierie Des Compétences: Syllabus HPC

Le syllabus du cours de Calcul Intensif (HPC) couvre les architectures parallèles, la programmation parallèle avec mémoire partagée et distribuée, ainsi que l'utilisation des GPU. Les étudiants apprendront à concevoir et analyser des programmes parallèles en utilisant des outils tels qu'OpenMP, MPI et CUDA. Le cours inclut des travaux pratiques et un projet de programmation parallèle, avec des références bibliographiques pour approfondir les connaissances.

Transféré par

baghdadi.absari
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Syllabus HPC

HPC
Calcul Intensif
Crédits : 4 Coef : 4
High performance computing
‫اﻟﺤﺴﺎب اﻟﻤﻜﺜﻒ‬
VH Cours : 22.50 Pré-requis :
VH TD : 30.00 Architectures Evoluées des Ordinateurs - Programmation Orientée Objet - Système d’exploitation I - Système d’exploitation II.

Ingénierie des Compétences


Familles de Compétences Niveau de compétence:
CF7 : Concevoir, mettre en œuvre et administrer des infrastructures complexes et réparties
Base Intermédiaire Avancé

Type de compétence: TEC : Technique, MET : Méthodologique, MOD : Modélisation, OPE :


Opérationnel,

Famille de
Compétence Elément de Compétence Type
Compétence

C78.3: Développer des programmes performants sur des


TEC
architectures parallèles et avancées

C7.8: Exploiter des architectures parallèles et C78.4: Analyser les types d'architectures parallèles et identifier les
CF7 MET
avancées pour accélérer l'exécution des programmes différents niveaux de parallélisme dans les architectures

C78.5: Exploiter diverses API pour mettre en oeuvre des


TEC
programmes parallèles

Description du programme de la matière


- Identifier les différentes architectures du HPC (MultiCoeurs, Cluster, Grilles et GPU).
- Lister les différentes applications du HPC
- Optimiser les programmes pour tirer avantage des caractéristiques de l’architecture des processeurs.
Objectifs: - Concevoir, Implémenter et analyser des programmes parallèles avec mémoire partagée en utilisant OpenMP.
- Concevoir, Implémenter et analyser des programmes parallèles avec mémoire distribuée en utilisant MPI.
- Implémenter des programmes parallèles sur les GPUs en utilisant CUDA.

1) Introduction au Calcul Haute Performance (High Performance Computing (HPC)) (~6h)

a) Motivation et Introduction aux architectures parallèles (MultiCoeurs, Cluster, Grilles et GPU).


b) Les différentes applications du HPC (Simulation scientifique, Economie, Ingénierie, Recherche Opérationnelle).
c) Modèles de machines parallèles, classifications de Flynn et Raina.
d) Modèle de programmation parallèle et distribuée (parallélisme de tâches, parallélisme de données, niveau du parallélisme,
communication par messages).
e) Problèmes fondamentaux de la programmation parallèle distribuée (partitionnement de tâches/données, régulation de charge,
ordonnancement, tolérance aux pannes, mesure de performance, présentation des lois d'Amdahl et de Gustafson).
TD (~4h) : Techniques de parallélisation et Parallélisme.

2) Programmation Parallèles pour architecture à Mémoires Partagées. (~6h)

a) Programmation parallèle avec les POSIX Threads du langage C (PThreads)


TP (~3h) : Introduction au PThreads.
b) Programmation parallèle avec les threads JAVA.
TP (~3h) : Introduction au Threads JAVA.
c) Programmation parallèle avec OpenMP.
Contenu:
TP (~3h) : Introduction à OpenMP.
3) Programmation Parallèles pour architecture à Mémoire Distribuée (~4h)

a) Programmation parallèle avec PVM (Parallel Virtual Machine).


TP (~3h) : Introduction à PVM.
b) Programmation parallèle avec MPI (Message Passing Interface).
TP (~3h) : Introduction à MPI.
4) Programmation Parallèle pour architectures GPU (Graphical Processor Unit) (~8h)
a) Introduction, historique et architecture des GPU.
b) Modèles de mémoires (Globale, Locale, partagées).
TD (~2h) : Etude de l’architecture GPU.
c) Programmation des GPU avec OpenCL.
TP (~3h) : Introduction à OpenCL.
d) Programmation des GPU avec CUDA.
TP (~3h) : Introduction à CUDA.

Travail - Projet Programmation Parallèle ~ 30 heures


Personnel:

1. P. Pacheco, “An Introduction to Parallel Programming”, Morgan Kauffman, 2011


2. G. Hager and G. Wellein, “Introduction to High Performance Computing for Scientists and Engineers”, Chapman & Hall
3. A. Grama, G. Karypis, V. Kumar, and A. Gupta, “Introduction to Parallel Computing”, Addison-Wesley, 2003
4. C. Lin, L. Snyder, “Principles of Parallel Programming”, Addison-Wesley, 2008
5. G. S. Almasi et A. Gottlieb. Benjamin Cummings Highly Parallel Computing - Second edition,.
6. K. Hwang. McGraw-Hill.Advanced Computer Architecture : Parallelism, Scalability, Programmability,
Bibliographie:
7. I. Foster. Designing and Building Parallel Programs, Addison-Wesley, http://www.mcs.anl.gov/dbpp/.
8. H. S. Morse.Practical Parallel Computing, AP Professional.
9. M. Cosnard et D. Trystram. Algorithmes et Architectures Parallèles, InterÉditions.
10. CPU Info Center, http ://infopad.eecs.berkeley.edu/CIC/.
11. Journal of Parallel and Distributed Computing

Vous aimerez peut-être aussi