Ansible playbooks for installing a shared environment for the Julia language on Puhti, Mahti and LUMI high-performance clusters. The clusters use Lmod for environment modules and Slurm for managing workloads. Documentation is available for the using the Julia environment and running Julia batch jobs on the cluster. We aim to follow the conventions described in the Julia on HPC clusters page.
The repository is structured as follows:
julia
directory contains a playbook and files for installing the official Julia binaries and a modulefile for loading Julia to the environment and setting default thread counts.- Playbooks and files for installing global preferences and a modulefile for loading them
mpi
for MPI.jlcuda
for CUDA.jlamdgpu
for AMDGPU.jl
hosts.yaml
contains the ansible hosts and the associated variables.install.sh
is a wrapper script for installing targets with Ansible.
We need to install Ansible core for the configuration.
python3 -m pip install --user ansible-core
We can use the wrapper script to perform installations:
./install.sh puhti julia 1.10.2
For more information, use the help flag:
./install.sh --help