The Chapel Parallel Programming Language

 

Chapel Presentations

Featured Chapel Presentations

Introducing Chapel: A Programming Language for Productive Parallel Computing from Laptops to Supercomputers [video], Brad Chamberlain, LinuxCon / Open Source Summit North America 2023, Vancouver BC, May 11, 2023.
This introduction to Chapel provides the language's motivation and brief comparisons with familiar languages and HPC programming models. It then introduces some of Chapel's core features for parallelism and locality, showing how they have recently been extended to also support GPUs. It wraps up by providing a peek into some of the flagship applications that are using Chapel.
Vendor-Neutral GPU Programming in Chapel [video], Jade Abraham, LinuxCon / Open Source Summit North America 2024, Seattle WA, April 16, 2024.
This talk gives an introduction to Chapel's support for GPU programming, including live demos on AMD and NVIDIA GPUs.
Chapel and Open Productive Parallel Computing at Scale [video], Michael Ferguson, Open Source Connector, Burlington VT (presented remotely), February 7, 2024.
This talk demonstrates how, as a parallel language, Chapel's standard library can easily support parallel implementations, permitting codes that are as succinct as other popular languages to outperform them by 10x–400x. It is also unique among the talks here in that it includes a live demo of programming using Chapel and Arkouda.
High-level, Vendor-Neutral GPU Programming Using Chapel, Engin Kayraklioglu, internal HPE talk (edited for public consumption), January 9, 2024.
This talk provides an in-depth introduction to Chapel's support for GPU programming from motivation to key concepts, applications, implementation approach, and ongoing work.

Featured Presentations by Chapel Users

High-Performance Programming and Execution of a Coral Biodiversity Mapping Algorithm Using Chapel [paper], Scott Bachman, PAW-ATM 2023, Denver, CO, November 13, 2023.
This talk describes the use of Chapel to estimate the biodiversity of coral reefs using satellite image analysis.
Implementing Scalable Matrix-Vector Products for the Exact Diagonalization Methods in Quantum Many-Body Physics [paper], Tom Westerhout, PAW-ATM 2023, Denver, CO, November 13, 2023.
This talk describes the use of Chapel to compute exact diagonalization methods on distributed systems, as used when simulating small quantum systems.

Other Recent Presentations

Practical Examples of Productivity and Performance in Chapel, Brad Chamberlain, PASC'23, Davos, Switzerland (presented remotely), June 26, 2023.
This talk summarizes Chapel's use in CHAMPS and Arkouda, including some recent scaling results, and summarizes the use of traditional Chapel features to target GPUs in a vendor-neutral manner.
Arkouda: A High-Performance Data Analytics Framework, Michelle Strout, CUG 2023, Helsinki, Finland, May 10, 2023.
This is an introduction to the motivation, capabilities, and performance of Arkouda, supporting interactive data science for Python users at massive scales.
Parallel Programming with Chapel (or: Performance at any Cost? HPC and 24h of Le Mans) [video], Brad Chamberlain, PNW PLSE 2023, Seattle, WA, May 9, 2023.
This 10-minute talk provides a very brief introduction to Chapel, highlighting recent advances such as support for GPUs and user applications.

Timeless Talks

HPC Lessons from 30 Years of Practice in CFD Towards Aircraft Design and Analysis, [video], Éric Laurendeau, CHIUW 2021, online, June 4, 2021.
This CHIUW keynote describes CHAMPS, a ~48k-line framework written in Chapel for 3D unstructured computational fluid dynamics (CFD), while also providing an introduction to the role of HPC in Aerodynamics. The productivity benefits that Chapel brings to the CHAMPS team's work are made clear.
Arkouda: Chapel-Powered, Interactive Supercomputing for Data Science [video|Q&A], William Reus, CHIUW 2020, online, May 22, 2020.
This CHIUW keynote describes Arkouda, a Python package that provides a NumPy-like interface implemented using a Chapel server that scales to dozens of Terabytes of data at interactive rates.
Chapel’s Home in the New Landscape of Scientific Frameworks (and what it can learn from the neighbours) [video | PDF slides], Jonathan Dursi, CHIUW 2017 keynote, Orlando FL, June 2, 2017.
This keynote by Jonathan Dursi presents a survey of modern parallel computing frameworks as seen through the filter of the speaker's applications background, and describes Chapel's unique position within that landscape.
Chapel in the (Cosmological) Wild [video], Nikhil Padmanabhan (Yale University), CHIUW 2016, May 27, 2016.
This was the keynote talk at CHIUW 2016, reporting on the personal experiences of an Astrophysics Professor who's been looking at using Chapel in his research.

Chapel Overviews

Making Parallel Computing as Easy as Py(thon), from Laptops to Supercomputers [video], Brad Chamberlain, HPE Dev Munch & Learn, online, April 20, 2022.
This talk provides background on Chapel, such as how it compares to other mainstream language and HPC programming models, along with some of its benefits in the Arkouda and CHAMPS applications.

Applications of Chapel

Application Examples of Leveraging Task Parallelism with Chapel [video], Michelle Strout, WAMTA 2023 keynote, Baton Rouge LA, February 15, 2023.
This keynote demonstrates how Chapel's support for task-parallelism is being used to express a wide variety of computations while also generating good performance and scalability.
Achieving Productivity at Scale with Chapel in User Applications, a SIAM PP22 Minisymposium, online, February 24, 2022
This session featured a series of talks about uses of Chapel in application codes developed in the community:
Simulating Ultralight Dark Matter with Chapel: An Experience Report [paper], Nikhil Padmanabhan, PAW-ATM 2019, Denver CO, November 17, 2019.
This talk describes a use of Chapel to explore dark matter in cosmological models.
Arkouda: NumPy-like arrays at massive scale backed by Chapel [paper], Mike Merrill, PAW-ATM 2019, Denver CO, November 17, 2019.
This talk describes the role of Chapel in supporting Exploratory Data Analysis (EDA) in Arkouda.

GPU Computing in Chapel

Generating GPU Kernels from Chapel's Features for Parallelism and Locality, Engin Kayraklioglu, SIAM PP22 minisymposium on Code Generation and Transformation in HPC on Heterogeneous Platforms, online, February 26, 2022.
This talk describes Chapel's recently added support for GPU programming, detailing the programming model and code generation strategy.

Implementing and Optimizing Chapel

Compiling Chapel: Keys to Making Parallel Programming Productive at Scale [video], Brad Chamberlain, PACT'20, online, October 7, 2020.
This talk gives a peek into what's required to compile some of Chapel's key features, and describes a pair of optimizations that are made possible through its unique features.
Multiresolution Support for Aggregated Communication in Chapel, Brad Chamberlain, OpenSHMEM 2021 keynote, online, September 16, 2021.
This keynote describes various forms of optimized and aggregated communications in Chapel for sparse communication patterns as exhibited by HPCC RA, Bale IndexGather, or Arkouda. Approaches include asynchronous fine-grain communications, manual copies expressed using Chapel's global namespace, and aggregation via user-level abstractions or compiler transformations.
Asynchronous Task-Based Aggregated Communication in Chapel, Elliot Ronaghan, AMTE 2022, online, August 23, 2022.
This talk describes the use of Chapel's task-based parallel features to optimize communication through compiler analysis and/or user-defined aggregation abstractions.
Communication Optimizations for the Chapel Programming Language, Michael Ferguson, University of Maryland, March 24, 2016.
This talk describes the Chapel memory consistency model and how it enables two communication optimizations that have been implemented for Chapel.
Chapel: The Design and Implementation of a Multiresolution Language, Brad Chamberlain, Keynotes on HPC Languages, Lyon, France, June 30, 2013.
This talk is a fairly comprehensive overview of Chapel's themes, features, and status, with a bit more emphasis on the implementation and multiresolution design of the language than a typical talk allows for.

Chapel Design and Philosophy

Chapel: Recent Successes, Ongoing Challenges, Brad Chamberlain, DOE Programming Systems Research Forum, online, February 28, 2022.
This talk provides an update to the DOE community about recent Chapel progress, along with a retrospective about how we got here and some research challenges going forward.
If the HPC Community were to create a truly productive language...[how] would we ever know?, Brad Chamberlain, keynote at Dagstuhl Seminar on Performance Portability in Extreme Scale Computing: Metrics, Challenges, Solutions, Wadern Germany, October 23-27, 2017.
This keynote provided a review of some of the productivity metrics that were pursued under the DARPA HPCS program, but then argued that productivity seems like a very personal/social decision and that it therefore should be studied in forums supporting personal/social decisions. Two specific proposals are made.
A Language Designer's Perspective on Benchmarking Suites and Competitions, Brad Chamberlain, EMBRACE 2017 invited talk, Orlando FL, June 2, 2017
This talk surveys past approaches to benchmarking from a language designer's perspective, rating them along various axes of importance. It wraps up by advocating for an HPC equivalent to the Computer Language Benchmarks game.
Lessons Learned in Array Programming: from ZPL to Chapel, Brad Chamberlain, ARRAY 2016 keynote, June 14, 2016.
This keynote talk reflects on some of the successes of ZPL's support for data-parallel array-based programming, lists reasons that ZPL was ultimately limited, and how we addressed those limitations in Chapel's design.
Chapel Hierarchical Locales: Adaptable Portability for Exascale Node Architectures [poster], Greg Titus, SC14 Emerging Technologies Presentations, November 18, 2014.
This talk and poster provide an introduction to Chapel's hierarchical locales, a Chapel concept for making the language and user codes future-proof against future changes in node architecture.
Reflections on Programming Environments and Productivity (based on experiences with HPCS and Chapel), Brad Chamberlain, ASCR Exascale Computing Systems Productivity Workshop, Gaithersburg MD, June 3rd, 2014.
This talk briefly summarizes productivity-oriented metrics work undertaken by the Cray Cascade project during the HPCS program, along with a few anecdotal instances of Chapel productivity. It also provides some of Brad's personal takeaways from the experience.
Five Things About HPC Programming Models I Can Live Without, Sung-Eun Choi, DOE Workshop on Exascale Programming Challenges, July 27, 2011.
This talk lists some of the things that we think make HPC programming non-productive today and gives examples of how we are trying to address them in Chapel.
Five Key Parallel Design Decisions (for Multicore, Petascale, and Beyond), Brad Chamberlain, Barcelona Multicore Workshop, October 22, 2010.
This talk considers five design decisions that parallel language designers should wrestle with and how Chapel's design deals with them.

Archived Presentations