Python - Programmation Parallèle et le Calcul Distribué

Formation créée le 18/07/2023. Dernière mise à jour le 01/09/2023.
Version du programme : 1

Type de formation

Formation présentielle

Durée de formation

14 heures (2 jours)

Python - Programmation Parallèle et le Calcul Distribué


Objectif de formation: Cette formation vise à fournir aux participants les compétences nécessaires pour exploiter la puissance de la programmation parallèle et du calcul distribué en utilisant Python. Les participants apprendront les concepts, les techniques et les outils pour accélérer l'exécution des programmes, optimiser les ressources et résoudre des problèmes de grande envergure en utilisant des approches parallèles et distribuées.

Objectifs de la formation

  • Comprendre les concepts et les principes de la programmation parallèle et du calcul distribué
  • Utiliser les bibliothèques de programmation parallèle en Python pour exploiter les ressources multicœurs
  • Maîtriser les techniques de calcul distribué avec dask pour résoudre des problèmes de grande envergure
  • Optimiser les performances des programmes Python en utilisant des techniques d'optimisation appropriées
  • Acquérir les compétences nécessaires pour concevoir et mettre en œuvre des solutions parallèles et distribuées en Python

Profil des bénéficiaires

Pour qui
  • développeurs Python
  • ingénieurs logiciels
  • data scientists
  • toute personne souhaitant améliorer les performances de ses programmes Python
Prérequis
  • Connaissance de base de la programmation Python
  • Compréhension des concepts fondamentaux de la programmation informatique

Contenu de la formation

Introduction à la Programmation Parallèle et au Calcul Distribué (3 heures)
  • Les concepts clés de la programmation parallèle et du calcul distribué
  • Les avantages et les défis de l'utilisation de ces approches en Python
  • Les modèles de programmation parallèle (ex. : multiprocessing, multithreading) et les architectures distribuées (ex. : client-serveur, calcul en grille)
Bibliothèques de Programmation Parallèle en Python (4 heures)
  • Utilisation de la bibliothèque multiprocessing pour exploiter les ressources multicœurs
  • La gestion des processus, des tâches et de la communication entre les processus
  • L'utilisation de la bibliothèque concurrent.futures pour exécuter des tâches asynchrones et parallèles
  • Travaux pratiques : Programmation parallèle avec multiprocessing et concurrent.futures
Calcul Distribué avec Python (4 heures)
  • L'utilisation de la bibliothèque de calcul distribué dask pour gérer des tâches distribuées
  • La création et la manipulation de tableaux de données distribués avec dask.dataframe
  • L'exécution de calculs parallèles sur des clusters de machines avec dask.distributed
  • Travaux pratiques : Calcul distribué avec dask sur un cluster de machines
Optimisation des Performances en Python (3 heures)
  • Les techniques d'optimisation des performances en Python
  • L'utilisation de la compilation JIT (Just-In-Time) avec Numba
  • L'accélération des calculs avec NumPy, pandas et autres bibliothèques optimisées
  • Travaux pratiques : Optimisation des performances de code en Python

Équipe pédagogique

Professionnel expert technique et pédagogique.

Suivi de l'exécution et évaluation des résultats

  • Feuilles de présence
  • Mises en situation
  • Formulaires d'évaluation de la formation
  • Certificat de réalisation de l’action de formation
  • Émargement numérique

Ressources techniques et pédagogiques

  • Documents supports de formation projetés
  • Exposés théoriques
  • Etude de cas concrets
  • Mise à disposition en ligne de documents supports à la suite de la formation
  • Espace intranet de formation

Qualité et satisfaction

Taux de satisfaction des stagiaires Progression des compétences visées Taux d'abandon Taux de retour des enquêtes Taux d'interruption en cours de prestation