Python in High Performance Computing

This course, developed by the Partnership for Advanced Computing in Europe (PRACE), targets programmers and specialists in the information and communication sector (ICT), with the aim of improving their coding knowledge and speed with Python (a programming language). Two instructors from the Finnish national supercomputing center CSC - IT Center for Science lead the course: Jussi Enkovaara, Senior application scientist and at and Martti Louhivuori, expert on high-performance computing.
What you will learn?
Over the course of 4 weeks, participants learn how to detect bottlenecks in performance and extend Python with the use of compiled code, i.e. the process of converting source code, or text written and readable by humans, so it can be ran by a computer. Learners also have an opportunity to improve their knowledge and ability to perform numerical computations more efficiently. Another expected learning outcome is achieving a deeper understanding of parallel programming with Python, including the various ways to optimise code, particularly in the context of high performance computing (HPC).
Structure of the course
The course is split into weeks, activities and topics but they can be completed at learners' own pace. The average weekly time commitment is 4 hours and a basic or intermediate knowledge of Python is required. Participants can receive a certificate for a small fee or audit the course free of charge. Learning material includes a combination of short videos, text material, audio, and practical activities. Learners can keep track of progress and assessment through an individual Progress dashboard page and notifications. A discussion forum allows participants to share ideas with course instructors and peers and debate and reflect on themes and topics covered by the course.