uni.lu hpc school 2020 - ps08: advanced distributed computing … · 2021. 1. 29. · uni.lu hpc...
TRANSCRIPT
Uni.lu HPC School 2020PS08: Advanced Distributed Computing with Python
Uni.lu High Performance Computing (HPC) TeamE. Kieffer
University of Luxembourg (UL), Luxembourghttp://hpc.uni.lu
1 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Latest versions available on Github:
UL HPC tutorials: https://github.com/ULHPC/tutorials
UL HPC School: http://hpc.uni.lu/hpc-school/
PS08 tutorial sources: ulhpc-tutorials.rtfd.io/en/latest/python/advanced/
2 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Introduction
Summary
1 Introduction
2 Parallel machine learning with ipyparallel
3 Parallel evolutionary computing with scoop
3 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Introduction
Main Objectives
11 How to parallelise your python code ?
22 Hereafter, we are going to see two alternatives :↪→ High-level approach with ipyparallel for scikit-learn↪→ Low-level approach with scoop
4 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Parallel machine learning with ipyparallel
Summary
1 Introduction
2 Parallel machine learning with ipyparallel
3 Parallel evolutionary computing with scoop
5 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Parallel machine learning with ipyparallel
Scikit-learn + ipyparallel
Scikit-learn is a well-known python scientific package:↪→ Machine learning algorithms (e.g. SVM)↪→ Data analysis approaches (e.g. PCA)↪→ Data mining techniques (e.g. Clustering)
Scikit-learn algorithms can be parallelised
Especially useful for Hyper-parameters search
Scikit-learn relies on ipyparallel and joblib libraries to parallelism algortihms
6 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Parallel machine learning with ipyparallel
Ipyparallel
Originally designed under Ipython
IPython’s architecture for parallel and distributed computing
Support many different styles of parallelism:↪→ Single program, multiple data (SPMD) parallelism↪→ Multiple program, multiple data (MPMD) parallelism↪→ Message passing using MPI↪→ Task farming↪→ Hybrid approaches combined the above ones
Ipyparallel can detect a job scheduler (e.g. Slurm) when started on a HPC platform
7 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Parallel machine learning with ipyparallel
Practical session
Please go to https://ulhpc-tutorials.readthedocs.io/en/latest/python/advanced/scikit-learn/
8 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Parallel evolutionary computing with scoop
Summary
1 Introduction
2 Parallel machine learning with ipyparallel
3 Parallel evolutionary computing with scoop
9 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Parallel evolutionary computing with scoop
Scoop + deap
Deap
Python evolutionary computing library:↪→ Genetic algorithms↪→ Particle swarm algorithms↪→ Evolutionary strategies↪→ Estimation of Distribution algorithms
Deap relies on scoop
10 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Parallel evolutionary computing with scoop
Scoop
SCOOP => Scalable COncurrent Operations in Python
Applications of SCOOP:↪→ Evolutionary algorithms↪→ Monte Carlo simulations↪→ Data mining↪→ Data processing↪→ Graph traversam
Very simple to use
Override default map (reduce) function
11 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Parallel evolutionary computing with scoop
Practical session
Please go to https://ulhpc-tutorials.readthedocs.io/en/latest/python/advanced/scoop-deap/
12 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
Thank you for your attention...
Questions?High Performance Computing @ Uni.lu
Prof. Stephane Pallage
Rector
Prof. Pascal Bouvry
Head Uni.lu HPC** Temporary mandate: Half-time CEO LuxProvide
Uni.lu HPC Team
Dr. Sebastien Varrette
Research Scientist,Deputy Head, Uni.lu HPC
HPC Research & Trainings* Acting Deputy Head during mandate: Dr. F. Pinel
Research Computing & HPC Operations* Acting Head during mandate: Dr. S. Varrette
Strategic DevelopmentsPartnership
Administration &Information
Dr. Frederic Pinel
Research Scientist,Coordinator NVidia Joint AI Lab
Dr. Emmanuel Kieffer
Research Scientist
Dr. Ezhilmathi Krishnasamy
Postdoctoral Researcher,Coordinator H2020 PRACE-6IP
Dr. Loizos Koutsantonis
Postdoctoral Researcher, EuroCC
N/A
Postdoctoral Researcher, EuroCC
Arlyne Vandeventer
Project ManagerEuroHPC Comp. Center (EuroCC)
Hyacinthe Cartiaux
Infrastructure andHPC Architecture Engineer
Abatcha Olloh
Infrastructure andHPC Architecture Engineer
Teddy Valette
Infrastructure andHPC Architecture Engineer
Sarah Peter
Infrastructure & Architecture EngineerLCSB BioCore sysadmins manager
University of Luxembourg, Belval CampusMaison du Nombre, 4th floor2, avenue de l’UniversitéL-4365 Esch-sur-Alzette
mail: [email protected]
1 Introduction
2 Parallel machine learning with ipyparallel
3 Parallel evolutionary computing with scoop
13 / 13E. Kieffer & Uni.lu HPC Team (University of Luxembourg) Uni.lu HPC School 2020/ PS08
N
https://hpc.uni.lu