Home - Log in

Parallel Architectures

Parallel Architectures Computer Science S4
Lessons : h TD : h TP : h Project : h Total : h
Co-ordinator : Emmanuel Cagniot
Prerequisite
Elements of CPU architectures, knowledge of C and C++ (template programming) programming languages
Course Objectives
Introduction to parallel architectures and programming models
Syllabus
The course mainly focus on the classification of parallel architectures according to architectural and memory access schemes. Pratical works focus on shared memory programming using OpenMP (Open MultiProcessing) API.
Practical work (TD or TP)
- PW 1 (4h) : introduction to basic OpenMP constructs (parallel region, data status and synchronization) in C programming language

- PW 2 (4h) : for loop parallelization, parallel region maximization, brute force algorithm (C programming language)

- PW 3 (4h) : recursive algorithm parallelization using parallel sections and tasks (C programming language)

- PW 4 (3h) : porting a distributed memory sorting algorithm onto a shared memory architecture (C++ programming language, template programming)
Acquired skills
Choosing the best parallel architecture for a specific kind of application. Finding a good compromise between performances and both portability and maintenability for a parallel code.
Bibliography
Algorithmes et architectures parallèles, Michel Cosnard, Denis Trystram, InterEditions, Paris, 1993

© 2024 - ENSICAEN ( Legal Notices - Credits )