18/12/2018 - 09.00 - 13.00
Python is making inroads into the HPC landscape. However, writing Python code for efficient scientific computing is not entirely trivial. In this course a variety of techniques and libraries will be discussed that are useful in this context. Subjects covered include profiling of code to discover opportunities for optimization, using Cython, a Python extension that translate critical code sections into efficient C,wrapping C/C++/Fortran libraries in Python, multithreaded/multiprocess Python, distributed programming use mpi4py, and pySpark for data science.
Participants have programming experience in Python and preferably also in C/C++ or Fortran.Level: intermediate