Julia
Introduction
Julia is a high-level, high-performance dynamic programming language for numerical computing
Module information:
module spider julia
----------------------------------------------------------------------------
Julia:
----------------------------------------------------------------------------
Description:
Julia is a high-level, high-performance dynamic programming language for numerical computing
Versions:
Julia/1.5.1-linux-x86_64
Julia/1.5.3-linux-x86_64
Julia/1.6.2-linux-x86_64
Multi-threaded Julia applications
Julia applications can benefit from faster execution on modern multi-core machines through using multiple execution threads, and Julia provides built-in support for multithreaded programming. A multithreaded program contains two or more threads (each defining a separate path of execution) that can run concurrently.
Example submission script:
#!/bin/bash
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=48
#SBATCH --time=12:00:00
#SBATCH --job-name=JuliaTest
#SBATCH --partition=short
module purge
module load Julia/1.6.2-linux-x86_64
julia -p ${SLURM_TASKS_PER_NODE} -t ${SLURM_CPUS_PER_TASK} myInput.jl
In the above example, myInput.jl
should be substituted for the appropriate names of your Java application and data files. The values of -p
(number of worker processes) and -t
(number of threads), are derived from the the values of ntasks-per-node
and cpus-per-task
in the submission script.