Portable High-Performance Python on CPUs, GPUs, and FPGAs
Offered By: Scalable Parallel Computing Lab, SPCL @ ETH Zurich via YouTube
Course Description
Overview
Explore a comprehensive 48-minute conference talk on achieving portable high-performance Python across CPUs, GPUs, and FPGAs. Delve into the Scalable Parallel Computing Lab's innovative workflow that maintains Python's productivity while delivering exceptional performance on various architectures. Learn about HPC-oriented language extensions, automatic optimizations, and a data-centric intermediate representation. Discover insights on control locality, data movement challenges, and performance portability using DaCe. Examine a weather simulation case study focusing on stencils, and understand temporal vectorization through modularity. Gain valuable knowledge on enhancing Python's capabilities for scientific computing and High Performance Computing (HPC) applications.
Syllabus
Introduction
Control Locality
Data Movement Dominates
Performance Portability with DaCe
Case study: Weather simulation Stencils
Temporal Vectorization using Modularity
Summary and Conclusions
Taught by
Scalable Parallel Computing Lab, SPCL @ ETH Zurich
Related Courses
Scientific ComputingUniversity of Washington via Coursera Biology Meets Programming: Bioinformatics for Beginners
University of California, San Diego via Coursera High Performance Scientific Computing
University of Washington via Coursera Practical Numerical Methods with Python
George Washington University via Independent Julia Scientific Programming
University of Cape Town via Coursera