From Source
To download and install Chapel from source, download chapel-2.6.0.tar.gz from GitHub, then unpack and build it as described in the Quickstart instructions.
With Spack
To get started with the Chapel Spack package:
- Install the Spack package manager on your system, if it isn’t already there.
- To customize the Chapel installation, use the variants of the Chapel Spack package as opposed to the normal
CHPL_*
environment variables. Most settings described in Chapel’s documentation can be set using variants of the Chapel Spack package. - Install the Chapel package, specifying any variant desired. For example, to also install the chpldoc tool, use
spack install chapel+chpldoc
.
With Docker
To get started with the Chapel Docker image:
- Install Docker Engine on your system if it isn’t already.
- Get the Chapel image:
docker pull chapel/chapel
- Follow the instructions on the Chapel Docker Hub page to compile and run some simple programs.
With Homebrew
Homebrew users can install Chapel on Mac/Linux as follows:
- Make sure your brew is up-to-date:
brew update
- Install the Chapel formula:
brew install chapel
- Note that for a homebrew install,
$CHPL_HOME
can be determined by runningchpl --print-chpl-home
. - If you’re not already familiar with Chapel, jump to the “Compile an example program step in the Quickstart Instructions.
On HPE Systems
Using and Installing Chapel on HPE Cray EX systems
Users of HPE Cray EX systems can use Chapel as follows:
- Load the Chapel module:
module load chapel
- Read $CHPL_HOME/doc/rst/platforms/cray.rst for quick-start instructions and more detailed notes.
If these steps don’t work, be sure that the latest version of Chapel (2.6) is installed on your system and ask your system administrator to install it if not. Alternatively, you can build from source using the instructions just below. If the latest version doesn’t work for you, send us a bug report.
Installing Chapel on HPE Apollo, HPE Cray XD, Cray XC, and Cray CS systems
Users of other HPE or Cray systems should download Chapel and build from source, referring to $CHPL_HOME/doc/rst/platforms/cray.rst for details.
With Linux Package Managers
We provide Chapel packages for several different Linux distributions, though they come with some performance caveats, as noted at the bottom of this section.
Each package comes bundled with
a number of different supported Chapel configurations and Chapel development tools. The installed package will default to the preferred single-locale configuration. To select a different configuration, you can pass compiler flags, set environment variables, or create chplconfig
files. See the
Chapel documentation
for more information on these options.
The packages can be installed as follows:
-
Download the package for your system using one of the following links:
-
Check its SHA256 checksum using the values and instructions on the corresponding GitHub release page.
-
Install using the system package manager.
- For RPM based distributions (Fedora, RHEL, etc), use:
dnf install ./<chapel package name>
- For Debian based distributions (Debian, Ubuntu, etc), use:
apt install ./<chapel package name>
- For RPM based distributions (Fedora, RHEL, etc), use:
Caveats:
- Using these packages means that parts of the Chapel runtime may not be compiled optimally for your architecture (e.g. the BigInteger and Regex modules may result in degraded performance). Users wanting maximum performance that makes use of their specific hardware should build Chapel from source, manually or using Spack.
- The bundled GASNet multi-locale configuration is a portable implementation based on GASNet-EX/UDP, so won’t take advantage of high-performance networks.
- The bundled SLURM/libfabric multi-locale configuration is experimental and may not work with all providers. It is known to work with the tcp and efa providers.