High performance Python18.04.2017, 13:30-17:30
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.
The participant should have programming experience in Python, and preferable some knowledge of C/C++/Fortran.