Syllabus des cursus de Centrale Lille

Algorithmics and databases 2 - High Performance Computing

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

Nombre maximum d'inscrits

Remarques