Julia
Julia is a high-level, high-performance language for technical computing. This page covers using Julia on Anunna.
Loading Julia
Julia is provided through the module system. Load a bucket first, then Julia:
module load 2024
module load Julia
To see which versions are available, use module spider Julia (see Environment Modules).
Packages
Julia manages its own packages with the built-in package manager (Pkg). By default packages install into your home directory under ~/.julia. Because home is small and not meant for heavy I/O, point Julia's depot at a larger Lustre location by setting JULIA_DEPOT_PATH before starting Julia:
export JULIA_DEPOT_PATH=/lustre/nobackup/<group>/<user>/julia_depot
Then add packages from the Julia REPL:
import Pkg
Pkg.add("DataFrames")
Running Julia in a job
Run Julia scripts as batch jobs through the scheduler — see Batch Jobs. For interactive work, start an interactive job first.
To use multiple cores, start Julia with the -t (threads) option, or use Julia's distributed/parallel facilities — see Performance Optimization/Multiple CPUs:
julia -t $SLURM_CPUS_PER_TASK myscript.jl