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
Artificial Intelligence for RoboticsStanford University via Udacity Intro to Computer Science
University of Virginia via Udacity Design of Computer Programs
Stanford University via Udacity Web Development
Udacity Programming Languages
University of Virginia via Udacity