Parallel computing with Chapel [course]
Note: all times are shown in the timezone in which each event occurs.
Date: 2 April 2026 @ 10:00 - 12:00
Timezone: Pacific Daylight Time
Language of instruction: English
Register
Abstract: Chapel is a modern programming language designed for both shared and distributed memory systems, offering high-level, easy-to-use abstractions for task and data parallelism. Its intuitive syntax makes it an excellent choice for novice HPC users learning parallel programming. Chapel supports a wide range of parallel hardware -- from multicore processors and multi-node clusters to GPUs -- using consistent syntax and concepts across all levels of hardware parallelism.
Chapel dramatically reduces the complexity of parallel coding by combining the simplicity of Python-style programming with the performance of compiled languages like C and Fortran. Parallel operations that might require dozens of lines in MPI can often be written in just a few lines of Chapel. As an open-source language, it runs on most Unix-like operating systems and scales from laptops to large HPC systems.
This course begins with Chapel fundamentals, then focuses on data parallelism through two numerical examples: one embarrassingly parallel and one tightly coupled. We'll also briefly explore task parallelism (a more complex topic, and not the primary focus in this course).
Keywords: Python, Programming, Parallel, HPC
Activity log