"Hands on" project on GPU and vectorization: basis on CUDA and TensorFlow
Description of the project: Vectorised calculations and heterogeneous computing architectures receive a lot of attention in HEP. The aim of this project is to provide the introduction to massively parallel calculation and show how they can be useful in various stages of HEP data analysis. The project consists of two parts:
- Introduction to CUDA programming (Dorothea): Basic principles of the GPU architecture and the programming language CUDA will be introduced. The participants can gain hands-on experience with several exercises implementing for example vector addition and matrix multiplication to be processed on a GPU.
- Introduction to TensorFlow framework and its applications in physics analysis (Anton). The tutorials will include exercises with both pure TensorFlow v2 (using python interface) and with the TensorFlowAnalysis package that provides HEP extension. The example applications we will deal with are toy MC generation, maximum likelihood fits and amplitude analyses.
Preliminary requirements: Knowledge of C++ (CUDA) and Python (TensorFlow). Familiarity with numpy would be an advantage.
- Hardware:
- CUDA introduction: access to machine with NVidia GPU
- TensorFlow introduction: GPU access is not necessary, but would be an advantage.
- Software:
- CUDA introduction: CUDA installation on the machine with Nvidia GPU
- TensorFlow introduction: TensorFlow v2, sympy, uproot, iminuit. The configuration file for Conda package manager will be available at the dedicated GitHub page.
Project coordinators: Anton Poluektov (anton.poluektov@cern.ch), Dorothea Vom Bruch (dorothea.vom.bruch@cern.ch)
Mattermost channel for discussions:
https://mattermost.web.cern.ch/gdr-inf/channels/gpu-vectorisation-hands-on-project
ZOOM connection details:
https://cern.zoom.us/j/95974540487?pwd=VVY3OVBjY2ZNdmZlcHEwMGlGVStYZz09
Meeting ID: 959 7454 0487
Passcode: 023379
One tap mobile
+41432107042,,95974540487#,,,,,,0#,,023379# Switzerland
+41432107108,,95974540487#,,,,,,0#,,023379# Switzerland
Dial by your location
+41 43 210 70 42 Switzerland
+41 43 210 71 08 Switzerland
+41 31 528 09 88 Switzerland
+33 1 7037 9729 France
+33 1 8699 5831 France
+33 1 7037 2246 France
Meeting ID: 959 7454 0487
Passcode: 023379
Find your local number: https://cern.zoom.us/u/awXtof2cs
Join by SIP
95974540487@188.184.89.188
Join by H.323
188.184.89.188
Meeting ID: 959 7454 0487
Passcode: 023379
Benjamin Audurier
Bertrand Laforge
Elisabeth Niel
Francesco Polci
Frederic Kapusta
Gaetano de Marino
Giampiero Mancinelli
Hossein AFSHARNIA
Jacopo Cerasoli
Jérôme Charles
Lukas Varnhorst
Mark Goodsell
Olivier Leroy
Raul Iraq Rabadan Trejo
Renato Quagliani
Resmi PK
Sara Maleubre
Siavash Neshatpour
Steffen Weber
Stephane T'JAMPENS
Vidya Sagar VOBBILISETTI