What is Chapel?
Chapel is a programming language designed for productive parallel computing at scale.
Why Chapel? Because it simplifies parallel programming through elegant support for:
- distributed arrays that can leverage thousands of nodes' memories and cores
- a global namespace supporting direct access to local or remote variables
- data parallelism to trivially use the cores of a laptop, cluster, or supercomputer
- task parallelism to create concurrency within a node or across the system
- productive: code tends to be similarly readable/writable as Python
- scalable: runs on laptops, clusters, the cloud, and HPC systems
- fast: performance competes with or beats C/C++ & MPI & OpenMP
- portable: compiles and runs in virtually any *nix environment
- open-source: hosted on GitHub, permissively licensed
New to Chapel?
As an introduction to Chapel, you may want to...- watch an overview talk or browse its slides
- read a chapter-length introduction to Chapel
- learn about projects powered by Chapel
- check out performance
highlights like these:
- browse sample programs or learn how to write distributed programs like this one:
use CyclicDist; // use the Cyclic distribution library
config const n = 100; // use --n=<val> when executing to override this default
forall i in {1..n} dmapped Cyclic(startIdx=1) do
writeln("Hello from iteration ", i, " of ", n, " running on node ", here.id);
What's Hot?
- The CHIUW 2021 paper and talk
submissions deadline is approaching on April 16
- Chapel 1.24 is now available—download a copy or browse its release notes
- New paper/slides about
GPU-based tree search (HPCS best paper nominee)
- See the paper/slides/talk from Parenteau et al. on
their CFD framework in Chapel
- We're proud to announce that Chapel was named a Bossie
2020 award winner
- See Brad Chamberlain's PACT'20 keynote on Compiling Chapel: slides/video
- Chapel has a new Discourse
site—join us there to talk about the language
- Watch Bill Reus' keynote, Arkouda: Interactive
Supercomputing for Data Science
- Also see: What's New?