Python has numerous advantages over traditional compiled languages like C and Fortran, and it is seeing increasing adoption among the scientific community. However, despite its advantages, there are challenges associated with using Python in a High Performance Computing (HPC) environment. First, a “vanilla” Python program is generally slower than an analogous compiled language program. Also, Python is relatively new to the HPC field, and many scientific programmers may not be aware of its parallel computing capabilities. This talk will discuss various strategies to make a serial Python code faster, for example using libraries like NumPy, or tools like Cython which compile Python code. The talk will also discuss the available tools for running Python in parallel, focusing on the mpi4py module which implements MPI (Message Passing Interface) in Python.
SHARCNET is a consortium of 18 Canadian academic institutions who share a network of high performance computers. They recently started up the SHARCNET YouTube Channel featuring biweekly webinars on HPC topics.