About this course
With the advent of multicore processors (and now many-core processors with several dozens of execution units), expressing parallelism is mandatory to enable high performance on different kinds of applications (scientific computing, big-data...). In this context, this course details multiple parallel programming paradigms to help exploiting such a large number of cores on different target architectures (regular CPUs and GPUs).It includes distributed-memory model (MPI), shared-memory model (OpenMP) and heterogeneous model (CUDA). All these approaches would allow leveraging the performance of differents computers (from small servers to large supercomputers listed in Top500).
Required level: INF431 or equivalent
Evaluation modalities: Project
Langue du cours : English
Learning outcomes
This module aims at improving the skills of students in the field of modern compute architecture (including GPU for computing) and parallel programming at scale. Furthermore, the main evaluation is based on a project developed along the period, leading to an advanced experience of application porting to parallel machines.
Examination
Evaluation based on hands-on sessions and a project containing a report, a defense and code development.
Retake with oral exam.
Additional information
- More infoCoursepage on website of École Polytechnique
- Contact a coordinator
- CreditsECTS 5
- LevelMaster
- InstructorsPatrick Carribault
- Mode of instructionOnline - at a specific time
Offering(s)
Start date
8 January 2025
- Ends18 March 2025
- Term *unknown
- Instruction language
Enrolment period closed