menu logo orsys formation
NOUS CONTACTER - +33 (0)1 49 07 73 73
NOUS CONTACTER - 📞 +33 (0)1 49 07 73 73    espace pro ESPACE PRO     inscription formation orsys S'INSCRIRE     drapeau francais   drapeau anglais
Nos domaines de formation :
Toutes nos formations Python, C, C++

Formation Python, programmation parallèle et calcul distribué

Stage pratique
New
Durée : 4 jours
Réf : PYP
Prix  2019 : 2540 € H.T.
Pauses et déjeuners offerts
  • Programme
  • Participants / Prérequis
  • Intra / sur-mesure
Programme

Le succès de Python pour les applications scientifiques (Data science, Big Data, Machine Learning...) requiert de plus en plus de capacités de calculs. Ce cours vous initie au paradigme du calcul parallèle/distribué, des concepts de base aux techniques et librairies les plus avancées de l’écosystème Python.

Objectifs pédagogiques

  • Acquérir les concepts de la programmation parallèle
  • Savoir identifier les portions d’un programme qui sont parallélisables
  • Posséder une vision claire de l’écosystème de calcul parallèle pour Python
  • Développer des applications parallélisées (programmation asynchrone, multithreading, multiprocessing, calcul distribué)
  • Savoir exécuter des calculs sur les GPU des cartes graphiques
  • Savoir exécuter un workflow de tâches dans le Cloud

Méthodes pédagogiques

70% du temps est consacré à la mise en pratique des concepts et librairies présentées. L’utilisation des notebooks Jupyter et l’exécution de code dans le Cloud apportent une réelle interactivité.
PROGRAMME DE FORMATION

Le parallélisme et son écosystème Python

  • Les différentes formes du parallélisme et ses architectures (CPU, GPU, ASIC, FPGA, NUMA, OpenMP, MPI... ).
  • Contraintes et limites.
  • L’écosystème de calcul parallèle pour Python.

Travaux pratiques
Profiling d’un programme (cProfile, Kcachegrind et pyprof2calltree). Compiler un programme C avec les instructions SIMD. Bien installer Numpy : comment obtenir un gain de vitesse x40.

Les bases : programmation asynchrone, multithreading et multiprocessing

  • Programmation asynchrone : générateurs et asyncio.
  • Multithreading : accès concurrents, verrous…
  • Limites du multithreading en Python.
  • Multiprocessing : mémoire partagée, pools de process, conditions...
  • Premier cluster de calcul distribué avec les Managers et Proxy.

Travaux pratiques
Réalisation d'une même chaîne de traitement de données avec chaque modèle et d’un cluster de calcul distribué entre les machines des participants.

Calcul distribué : Celery, Dask et PySpark

  • Concepts et configuration.
  • Mise en œuvre de chaque librairie.

Travaux pratiques
Plusieurs exercices seront abordés (calcul matriciel, traitement d’image/texte, Bitcoin, Machine Learning...). Utilisation des notebooks Zeppelin.

Calculer sur GPU

  • Les architectures GPU : kernels, mémoire, threads...
  • Les librairies OpenCL et CUDA.
  • Mise en œuvre des librairies Scikit-cuda, PyCUDA et Numba.

Travaux pratiques
Calcul matriciel et traitement d’images. Machine Learning avec la librairie mxnet : Neural Art. Compilation Just In Time.

Autres librairies de programmation parallèle

  • Message Passing Interface avec MPI4py.
  • PyOpenCL : implémenter un code avec des systèmes hétérogènes.
  • Joblib : Les pipelines légers.
  • Greenlets : vers un meilleur multithreading.
  • Pythran : Compiler vos programmes Python sur architectures multicœurs et vectorisées.

Travaux pratiques
Exercices de base avec chaque librairie.

Créer des workflows de tâches

  • Les primitives disponibles avec Celery, Dask et PySpark.
  • Créer et superviser des workflows avec les librairies Luigi et Airflow.

Travaux pratiques
Création de pipelines de traitements de données avec chaque librairie.

Exécuter des calculs dans le Cloud

  • Panorama de l’offre Internet pour le Cloud.
  • Administrer un cluster avec Ansible.

Travaux pratiques
Effectuer des calculs dans le Cloud.

Participants / Prérequis

» Participants

Développeurs, data scientists, data analysts, chefs de projets.

» Prérequis

Bonnes connaissances du langage Python et si possible de ses librairies scientifiques Numpy, Scipy et Pandas.
Intra / sur-mesure

Demande de devis intra-entreprise
(réponse sous 48h)

Vos coordonnées

En cochant cette case, j’atteste avoir lu et accepté les conditions liées à l’usage de mes données dans le cadre de la réglementation sur la protection des données à caractère personnel (RGPD).
Vous pouvez à tout moment modifier l’usage de vos données et exercer vos droits en envoyant un email à l’adresse rgpd@orsys.fr
En cochant cette case, j’accepte de recevoir les communications à vocation commerciale et promotionnelle de la part d’ORSYS Formation*
Vous pouvez à tout moment vous désinscrire en utilisant le lien de désabonnement inclus dans nos communications.
* Les participants inscrits à nos sessions de formation sont également susceptibles de recevoir nos communications avec la possibilité de se désabonner à tout moment.

Pour vous inscrire

Cliquez sur la ville, puis sur la date de votre choix.
[-]
PARIS

Horaires

Les cours ont lieu de 9h à 12h30 et de 14h à 17h30.
Les participants sont accueillis à partir de 8h45.
Pour les stages pratiques de 4 ou 5 jours, les sessions se terminent à 15h30 le dernier jour.
linkedin orsys
twitter orsys
it! orsys
instagram orsys
pinterest orsys
facebook orsys
youtube orsys