Libellé du cours : | Algorithmics and databases 2 - High Performance Computing |
---|---|
Département d'enseignement : | EEA / Electronique Electrotechnique Automatique |
Responsable d'enseignement : | Monsieur PIERRE-ANTOINE THOUVENIN / Monsieur PIERRE CHAINAIS |
Langue d'enseignement : | |
Ects potentiels : | 0 |
Grille des résultats : | |
Code et libellé (hp) : | MR_DS_S3_AD2 - Algorithmics and databases 2 - |
Equipe pédagogique
Enseignants : Monsieur PIERRE-ANTOINE THOUVENIN / Monsieur PIERRE CHAINAIS
Intervenants extérieurs (entreprise, recherche, enseignement secondaire) : divers enseignants vacataires
Résumé
This course aims at presenting the basics of parallel and high performance computing on one or multiple node(s) of multi-core CPUs and GPUs. This includes: · parallel architectures, · parallel algorithmics, · data and task parallelism, · data distribution and load balancing, · parallel programming on distributed-memory architectures (MPI standard), · sequential code optimization for high performance computing, · GPU programming and optimization
Objectifs pédagogiques
After successfully taking this course, a student should be able to: · know the various parallel architectures and the various parallel programming models, · design parallel algorithms, · design, implement and optimize parallel programs on high performance architectures (one or multiple node(s) of multi-core CPUs and GPUs), · determine whether an application is relevant for CPU and/or GPU parallel acceleration, · use a supercomputer with multiple CPU+GPU nodes.
Objectifs de développement durable
Modalités de contrôle de connaissance
Contrôle Continu
Commentaires: Project, (min) 0 - 20 (max)
Oral exam, (min) 0 - 20 (max)
Passing grade 10/20
Ressources en ligne
• Parallel Programming in C with MPI and OpenMP, M.J. Quinn • U.C. Berkeley CS267 (J. Demmel et al.): http://www.cs.berkeley.edu/~demmel • Univ. Tennessee Knoxville CS 594 (J. Dongarra et al.): http://www.netlib.org/utk/people/JackDongarra/courses.htm • IDRIS course on MPI: http://www.idris.fr/formations/mpi/ • CUDA documentation (https://docs.nvidia.com/cuda/index.html) and courses (https://developer.nvidia.com/educators/existing-courses)
Pédagogie
24 hours, 6 lectures, 6 labs/tutorial sessions English is the default language.
Séquencement / modalités d'apprentissage
Nombre d'heures en CM (Cours Magistraux) : | 12 |
---|---|
Nombre d'heures en TD (Travaux Dirigés) : | 12 |
Nombre d'heures en TP (Travaux Pratiques) : | 0 |
Nombre d'heures en Séminaire : | 0 |
Nombre d'heures en Demi-séminaire : | 0 |
Nombre d'heures élèves en TEA (Travail En Autonomie) : | 0 |
Nombre d'heures élèves en TNE (Travail Non Encadré) : | 0 |
Nombre d'heures en CB (Contrôle Bloqué) : | 0 |
Nombre d'heures élèves en PER (Travail PERsonnel) : | 0 |
Nombre d'heures en Heures Projets : | 0 |
Pré-requis
C or Python programming