Python for High Performance and Scientific Computing
SESSION: M12: Python for High Performance and Scientific Computing
EVENT TYPE: Tutorial
TIME: 8:30AM - 5:00PM
Presenter(s):William R. Scullin, James B. Snyder, Massimo Di Pierro, Jussi Enkovaara
ABSTRACT: Python, a high-level portable multi-paradigm interpreted programming language, is becoming increasingly popular with the scientific and HPC communities due to ease of use, large collection of modules, adaptability, and strong support from vendors and community alike. This tutorial provides an introduction to Python focused on HPC and scientific computing. Throughout, we provide concrete examples, hands-on examples, and links to additional sources of information. The result will be a clear sense of possibilities and best practices using Python in HPC environments.
We will cover several key concepts: language basics, NumPy and SciPy, parallel programming, performance issues, integrating C and Fortran, basic visualization, large production codes, and finding resources. While it is impossible to address all libraries and application domains, at the end participants should be able to write a simple application making use of parallel programming techniques, visualize the output, and know how to confidently proceed with future projects with Python.