Python is being increasingly used in high-performance computing projects. It can be used either as a high-level interface to existing HPC applications and libraries, as embedded interpreter, or directly.
This course combines lectures and hands-on session. We will show how Python can be used on parallel architectures and how performance critical parts of the kernel can be optimized using various tools.
For using Python productively for parallel computing, these topics will be covered:
- Interactive parallel programming with IPython
- Profiling and optimization
- High-performance NumPy and SciPy, numba
- Distributed-memory parallel programming with Python and MPI
- Bindings to other programming languages and HPC libraries
- Interfaces to GPUs
This course is aimed at scientists who wish to explore the productivity gains made possible by Python for HPC.
Prerequisites: Experience with Python and NumPy
Registrations are only considered until 31 May 2017 due to available space, the maximal number of participants is limited. Applicants will be notified, whether they are accepted for participitation.
Instructors: Dr. Jan Meinke, Dr. Olav Zimmermann, JSC
For any questions concerning the course please send an e-mail to firstname.lastname@example.org
Accomodation in Jülich:
Participants are responsible for booking their own hotel accommodation.
Hotel suggestions can be found on the webpage "Travel information and access to Jülich Supercomputing Centre" at JSC.