DES RESSOURCES ET DES OUTILS AU SERVICE DES ACTEURS ET DES PROFESSIONNELS.

Python – Calcul parallèle

Date de mise à jour : 19/04/2024 | Identifiant OffreInfo : 15_637675

Information fournie par :
Carif-Oref Occitanie

Objectifs, programme, validation de la formation

Objectifs

Comprendre le paradigme de la programmation parallèle
Identifier les goulots d'étranglement et les parties parallélisables de votre programme
Avoir une bonne compréhension du paysage des librairies de calcul parallèle disponibles pour Python
Savoir développer des applications parallélisées (multithreading, multiprocessing, calcul distribué, cloud computing)
Exécuter des calculs sur GPU (cartes graphiques)
Créer des workflows de traitement de données

Programme de la formation

- Etat de l'art de la discipline et concepts de base

  • Historique des supercalculateurs
  • Comprendre les différentes architectures disponibles pour le calcul parallèle (CPU, GPU, TPU, ASIC, FPGA, NUMA... )
  • Tout n'est pas parallélisable : comprendre les limites de la programmation parallèle
  • Présentation du paysage de calcul parallèle avec Python
Travaux pratiques
Identifier les capacités matérielles de votre ordinateur. Mesurer les performances/limites de votre configuration (disques, mémoire, processeurs, ...).
Configurer son environnement de calcul parallèle.
Administrer une ferme de serveurs avec ansible

- Les concepts de la programmation parallèle
  • Comprendre la terminologie: programmation asynchrone, concurrente, distribuée, multithreading, multiprocessing, ...
  • Multithreading : paralléliser le code de votre programme - mise en oeuvre des concepts de base
  • Comprendre les limites du multithreading en Python
  • Multiprocessing : paralléliser votre programme sur plusieurs processeurs et mécanismes de synchronisation (verrous, sémaphores, barrières, pools de process...)
Travaux pratiques
Application des concepts de base aux travers d'exercices pratiques.
Mesurer les différences de performances entre les librairies multithreading et multiprocessing.
Premier cluster de calcul distribué avec les Managers et Proxy.

- Le calcul sur GPU
Un GPU ne se programme pas comme un CPU.
  • Comprendre les architectures GPU : kernels, mémoire, threads, ...
  • Travailler avec des cartes graphiques externes (eGPU)
  • Mise en œuvre des principales librairies Python pour GPU: Cupy, PyCUDA, Numba et RapidsAI
Travaux pratiques
Identifier quand un GPU devient plus intéressant qu'un CPU.
Traitement d'images, calcul matriciel, tester la fiabilité d'un mot de passe, ...

- Calcul distribué
  • Les principales librairies : Celery, Dask et PySpark
  • Déployer et superviser un cluster de calcul parallèle avec chacune des librairies
  • Exécuter des calculs sur un cluster
Travaux pratiques
Batch de tâches avec Celery.
Calcul numérique et analyse de données avec Dask (array et dataframe)
Analyse de données avec les DataFrames Spark et la librairie Koalas.

- Créer un pipeline de traitement de données
  • Présentation des librairies Luigi et Airflow
  • Concevoir et superviser son workflow
Travaux pratiques
Réaliser un workflow sur un ensemble de fichiers volumineux et le superviser avec Airflow.
&

Validation et sanction

Attestation de formation

Type de formation

Non certificiante

Sortie

Sans niveau spécifique

Métiers visés

Code Rome

Durée, rythme, financement

Modalités pédagogiques
Durée
35 heures en centre, 35 heures hebdomadaires

Conventionnement : Non

Financeur(s)

Autre

Conditions d'accès

Public(s)
Tout public
Modalités de recrutement et d'admission

Niveau d'entrée : Sans niveau spécifique

Conditions spécifiques et prérequis

Pour suivre ce stage dans de bonnes conditions, il est recommandé d'avoir suivi en amont la formation<a href="https://www.datavalue.fr/formation-python-bases-introduction-librairies-scientifiques" target="_blank" rel="">Python – Bases et introduction aux librairies scientifiquesou d'avoir atteint par la pratique un niveau équivalent

Modalités d'accès

Lieu de réalisation de l'action

Formation entièrement à distance
Adresse
41, rue de la Découverte
CS 37621
31676 - Labège
Responsable :
Téléphone fixe :
Contacter l'organisme

Contacts

Contact sur la formation
Responsable : Monsieur Cédric CALAS
Téléphone fixe : 09 72 56 75 67
fax :
Site web :
Contacter l'organisme
Contacter l'organisme formateur
Data Value
SIRET: 81837224500014
31676 Labège
Responsable :
Téléphone fixe : 0972567567
Site web :
Contacter l'organisme

Période prévisibles de déroulement des sessions

du 01/01/2024 au 31/07/2025
débutant le : 01/01/2024
Adresse d'inscription
41 rue de la Découverte
CS 37621
DATA VALUE
41 rue de la Decouverte
31676 - Labège
Etat du recrutement : Ouvert
Modalités : Entrées/sorties permanentes

Organisme responsable

Data Value
SIRET : 81837224500014

Adresse
41 rue de la Découverte
CS 37621
DATA VALUE
41 rue de la Decouverte
31676 - Labège
Téléphone fixe : 0972567567
Contacter l'organisme