module load Julia
(or similar - Julia must be in the PATH)- (remove depot - optional for minimal depot file later - to find depot use
] status
) - add all packages required by your application(s) to be run at scale (
] add <packages...>
, e.g.add ParallelStencil#main, ImplicitGlobalGrid, MPI, CUDA, CellArrays, StaticArrays, ElasticArrays, ArgParse, BenchmarkTools, LinearAlgebra, Printf, Statistics
) - make sure your application runs as expected - do
git clone https://github.com/omlins/JuliaAtScale jas
from the folder with you Julia application(s) - do
chmod +x jas/*
- do
./jas/s1_get_julia_soft.sh
- do
./jas/s2_get_julia_depot.sh
- do
./jas/s3_copy_libs.sh
- use
./jas/s4_submit_jas.sh
, e.g.,JAS_DIR=$SCRATCH/julia_scaling/ JAS_APPS='myapp1.jl myapp2.jl myapp3.jl' JAS_NEXP=1 JAS_SCALING=1 JAS_MAX_POW2=6 JAS_NPROCS_MAX=64 ./jas/s4_submit_jas.sh --ntasks=64 -Acsstaff
(theJAS_
prefixed environment variables need to be set; any argument after./jas/s4_submit_jas.sh
is passed as is tosbatch
used for job submission); *This will delete the content in$JAS_DIR/out
and$JAS_DIR/prog
.