algorithmist.dev

C# : Programmation parallèle

.NETC#
Durée : 2 jours Niveau : ⭐⭐⭐

Résumé

Réaliser un traitement de données parallélisé ou multi-thread, résoudre un problème de synchronisation, exploiter les tâches asynchrones de .NET.

Objectif

A l’issue de la formation, le stagiaire saura mettre en œuvre :

  • Instanciation de threads partageant des données communes
  • Synchronisation de threads pour garantir la cohérence des données
  • Orchestration de tâches asynchrones
  • Conception d’un traitement de données multithread
  • Parallélisation d’un algorithme

Public concerné

Cette formation s’adresse aux développeurs professionnels ou aux étudiants avec une expérience en programmation C#. Le stagiaire doit maîtriser les aspects structurés, objets et fonctionnels (LINQ) du langage.

Des connaissances en algorithmique et en système sont conseillées. Des rappels seront faits.

Une expérience avec une bibliothèque graphique .NET est un plus (certaines démonstrations exploitent WPF).

Contenu

Partie 1 : Système d’exploitation

Ordonnancement de tâches :

  • Partage du temps de calcul
  • Différentes stratégies d’ordonnancement
  • Parallélisme logique et parallélisme physique
  • Threads, processus, mémoire partagé

Threads et synchronisation :

  • Création d’un thread
  • Rendez-vous
  • Problème de lecture et d’écriture sale
  • Primitives de synchronisation : exclusion mutuelle, sémaphores, signaux
  • Opérations atomiques
  • Verrou d’écriture

Partie 2 : Programmation parallèle

Tâches asynchrones et pool de threads :

  • Calcul synchrone vs calcul asynchrone
  • Un modèle de calcul asynchrone, application aux interfaces graphiques
  • Calcul asynchrone parallèle
  • Pool de threads et tâches
  • Programmation asynchrone
  • Tâche de fond, synchronisation avec une interface graphique

Traitement de données multithread :

  • Parallélisation d’une boucle
  • Opérateurs PLINQ (Parallel LINQ)
  • Itérateurs asynchrones

Algorithmes parallèles :

  • Algorithmes d’exploration
  • Serveur web
  • Traitement d’image
  • Rendu 2D/3D temps-réel

Modalités

Mode d’intervention

En sous-traitance auprès des instituts de formation certifiés Qualopi, en inter- ou intra-entreprise.

Le programme présenté est adaptable à un besoin spécifique après audit.

Travaux pratiques

L’ensemble de la formation s’articule à parts égales entre exposés techniques, démonstrations en direct et travaux pratiques.

Le stagiaire reçoit durant la formation les supports d’exposé ainsi que le code source des démonstrations et solutions de travaux pratiques.

Moyens techniques

La formation est proposée en vidéo-conférence. Le stagiaire doit s’équiper du matériel et du logiciel nécessaire.

Ce programme vous intéresse ?