2.12.13 (672)

Cours scientifiques - CSC_3S005_EP : Concurrent and Distributed Computing

Domaine > Informatique.

Descriptif

Les programmes actuels ne s'exécutent plus sur un seul ordinateur à la fois, mais sur des groupes de processeurs ou de machines fonctionnant de concert. Or, garantir l'efficacité et la coordination entre les threads d'un programme constitue un problème d'une grande subtilité et d'un grand intérêt. Ce cours vise à fournir les techniques nécessaires pour maîtriser la programmation distribuée efficace, en évitant les nombreux écueils qui surgissent lorsque les calculs partagent leurs ressources.
 

Objectifs pédagogiques

Comprendre les concepts de la programmation multithread et les mettre en pratique en C++.

Pour les étudiants du diplôme Bachelor of Science de l'Ecole polytechnique

Vous devez avoir validé l'équation suivante : UE CSC_2F001_EP Et UE CSC_2F002_EP

Prérequis : CSE201, CSE202.

Pour les étudiants du diplôme Programmes d'échange internationaux

Vous devez avoir validé l'équation suivante : UE CSC_2F001_EP Et UE CSC_2F002_EP

Notions de base en programmation C++, notions de base en algorithmique séquentielle. 

Format des notes

Numérique sur 20

Littérale/grade américain

Pour les étudiants du diplôme Programmes d'échange internationaux

Vos modalités d'acquisition :

La note est calculée comme suit :


15 % pour la participation en cours (travaux dirigés)
35 % pour l'examen de mi-semestre, partie I : programmation (en TD)
15 % pour l'examen de mi-semestre, partie II : théorie (en cours magistral)
35 % pour le projet

Le rattrapage est autorisé (Note de rattrapage conservée écrêtée à une note seuil de 10)
  • le rattrapage est obligatoire si :
    Note initiale < 10
  • le rattrapage peut être demandé par l'étudiant si :
    Note initiale < 10
L'UE est acquise si Note finale >= 10
  • Crédits ECTS acquis : 4 ECTS

La note obtenue rentre dans le calcul de votre GPA.

Pour les étudiants du diplôme Bachelor of Science de l'Ecole polytechnique

Vos modalités d'acquisition :

La note est calculée comme suit :


15 % pour la participation en cours (travaux dirigés)
35 % pour l'examen de mi-semestre, partie I : programmation (en TD)
15 % pour l'examen de mi-semestre, partie II : théorie (en cours magistral)
35 % pour le projet

Le rattrapage est autorisé (Note de rattrapage conservée écrêtée à une note seuil de 10)
  • le rattrapage est obligatoire si :
    Note initiale < 10
  • le rattrapage peut être demandé par l'étudiant si :
    Note initiale < 10
L'UE est acquise si Note finale >= 10
  • Crédits ECTS acquis : 4 ECTS

La note obtenue rentre dans le calcul de votre GPA.

Programme détaillé

- Les threads de type POSIX : concepts fondamentaux et programmation pratique en C++

- Structures de données concurrentes : des implémentations basées sur des verrous à celles sans verrou. Application aux piles, files d'attente, ensembles, etc. concurrents

- Efficacité et sécurité : mesures de complexité (modèle PRAM) et concepts permettant de prouver la correction des programmes concurrents (sérialisabilité, linéarisabilité)

- Implémentation efficace des threads, calcul sur GPU : concepts architecturaux et programmation de base

Mots clés

Parallélisme, programmation parallèle, multi-threading, algorithmique parallèle, correction des programmes parallèles, structures de données concurrentes, calculs sur GPUs, introduction aux systèmes distribués

Méthodes pédagogiques

Cours et TDs.

Support pédagogique multimédia

Oui

Veuillez patienter