Publicatiedatum : 04/07/2024

Opleiding : Python, parallel programmeren en gedistribueerd computergebruik

Praktijkcursus - 4d - 28u00 - Ref. PYP
Prijs : 2100 € V.B.

Python, parallel programmeren en gedistribueerd computergebruik




Het succes van Python voor wetenschappelijke toepassingen (Data science, Big Data, Machine Learning, enz.) vereist steeds meer rekencapaciteit. In deze cursus maak je kennis met het parallelle/distributed computing paradigma, van de basisconcepten tot de meest geavanceerde technieken en bibliotheken in het Python ecosysteem.


INTER
INTRA
OP MAAT

Praktijkcursus ter plaatse of via klasverband op afstand
Disponible en anglais, à la demande

Ref. PYP
  4d - 28u00
2100 € V.B.




Het succes van Python voor wetenschappelijke toepassingen (Data science, Big Data, Machine Learning, enz.) vereist steeds meer rekencapaciteit. In deze cursus maak je kennis met het parallelle/distributed computing paradigma, van de basisconcepten tot de meest geavanceerde technieken en bibliotheken in het Python ecosysteem.


Pedagogische doelstellingen
Aan het einde van de training is de deelnemer in staat om:
De concepten van parallel programmeren verwerven
De delen van een programma identificeren die geparallelliseerd kunnen worden
Een duidelijke visie hebben op het parallelle computing ecosysteem voor Python
Ontwikkelen van parallelle toepassingen (asynchroon programmeren, multithreading, multiprocessing, distributed computing)
Weten hoe je berekeningen uitvoert op de GPU's van grafische kaarten
Hoe een workflow van taken uitvoeren in de Cloud

Doelgroep
Ontwikkelaars, datawetenschappers, data-analisten, projectmanagers.

Voorafgaande vereisten
Goede kennis van de taal Python en, indien mogelijk, de wetenschappelijke bibliotheken Numpy, Scipy en Pandas.

Praktische modaliteiten
Leer methodes
70% van de tijd wordt besteed aan het in praktijk brengen van de gepresenteerde concepten en bibliotheken. Het gebruik van Jupyter notebooks en het uitvoeren van code in de Cloud zorgen voor echte interactiviteit.

Opleidingsprogramma

1
Parallellisme en het ecosysteem van Python

  • De verschillende vormen van parallellisme en hun architecturen (CPU, GPU, ASIC, FPGA, NUMA, OpenMP, MPI, enz.).
  • Beperkingen en limieten.
  • Het parallelle rekenecosysteem voor Python.
Praktisch werk
Een programma profileren (cProfile, Kcachegrind en pyprof2calltree). Een C-programma compileren met SIMD-instructies. Numpy correct installeren: hoe een snelheidstoename van 40x te bereiken.

2
De basis: asynchroon programmeren, multithreading en multiprocessing

  • Asynchroon programmeren: generatoren en asynchronie.
  • Multithreading: gelijktijdige toegang, sloten, enz.
  • De grenzen van multithreading in Python.
  • Multiprocessing: gedeeld geheugen, procespools, voorwaarden, enz.
  • Eerste gedistribueerde computercluster met managers en proxy.
Praktisch werk
Creatie van een enkele gegevensverwerkingsketen met elk model en een gedistribueerd rekencluster tussen de machines van de deelnemers.

3
Gedistribueerd computergebruik : Celery, Dask en PySpark

  • Concepten en configuratie.
  • Implementatie van elke bibliotheek.
Praktisch werk
Verschillende oefeningen komen aan bod (matrixberekeningen, beeld/tekstverwerking, Bitcoin, Machine Learning, enz.) Gebruik van Zeppelin-notitieblokken.

4
GPU-rekenen

  • GPU-architecturen: kernels, geheugen, threads, enz.
  • OpenCL- en CUDA-bibliotheken.
  • Implementatie van de Scikit-cuda, PyCUDA en Numba bibliotheken.
Praktisch werk
Matrixberekening en beeldverwerking. Machine Learning met de mxnet bibliotheek: Neurale kunst. Just In Time compilatie.

5
Andere parallelle programmeerbibliotheken

  • Message Passing Interface met MPI4py.
  • PyOpenCL: code implementeren met heterogene systemen.
  • Joblib: Lichtgewicht pijplijnen.
  • Greenlets: naar betere multithreading.
  • Pythran : Compileer uw Python-programma's op multicore- en vectorarchitecturen.
Praktisch werk
Basisoefeningen bij elke bibliotheek.

6
Taakworkflows maken

  • Primitieven beschikbaar met Celery, Dask en PySpark.
  • Creëer en beheer workflows met de Luigi en Airflow bibliotheken.
Praktisch werk
Aanmaken van gegevensverwerkingspijplijnen met elke bibliotheek.

7
Berekeningen uitvoeren in de cloud

  • Overzicht van internetdiensten voor de cloud.
  • Een cluster beheren met Ansible.
Praktisch werk
Berekeningen uitvoeren in de Cloud.


Feedback van klanten
4,4 / 5
De feedback van klanten is afkomstig van eindevaluaties na de opleiding. De score wordt berekend op basis van alle evaluaties die minder dan 12 maanden oud zijn. Alleen die met een tekstcommentaar worden weergegeven.
CLÉMENT P.
04/11/25
4 / 5

Heel goed, de training gaf een gereedschapskist voor parallellisme in Python.
FREDERIC D.
04/11/25
5 / 5

Zeer bekwame trainer die zijn onderwerp beheerst, spreekt langzaam genoeg voor ons om het te volgen. Trainingsmateriaal niet helemaal compleet: als ik over 6 maanden op zoek ben naar informatie zonder geoefend te hebben, weet ik niet zeker of het trainingsmateriaal voldoende zal zijn, ik heb ook mijn aantekeningen nodig.
NICOLAS J.
04/11/25
5 / 5

De trainer luistert goed en kijkt naar de problemen die we tegenkomen.



Data en plaats
Selecteer uw locatie of kies voor de les op afstand en kies vervolgens uw datum.
Klas op afstand

Dernières places
Date garantie en présentiel ou à distance
Session garantie

KLAS OP AFSTAND
2026 : 31 maa., 16 juni, 15 sep.

PARIS LA DÉFENSE
2026 : 31 maa., 16 juni, 15 sep.