A high-level, high-performance, dynamic programming language |
Julia is a high-level, high-performance, dynamic programming language. While it is a general-purpose language and can be used to write any application, many of its features are well suited for numerical analysis and computational science. (Wikipedia)
Read more on the Julia home page.
Julia is distributed under the MIT license. Julia is free for everyone to use and all source code is publicly available on GitHub.
Version | Modulefile | CLX | Genoa | A100 | PVC | Remarks |
---|---|---|---|---|---|---|
1.7.2 | (disabled) | |||||
1.10.9 |
| ✔✅ | ✅ | ⛔ | ⛔ |
… on login nodes
This is possible, but resources (CPU, memory, runtime) are limited. Be friendly to other users, login nodes are shared resources.
… on compute nodes
Use the batch system to allocate a compute node, log in to that node using X11 forwarding, load a modulefile for Julia, and work interactively as usual:
$ salloc -N 1 -p cpu-genoa $ ssh -X $SLURM_NODELIST $ module load julia/1.10.9 $ julia … julia> |
When done, leave the compute node (exit
) and free the allocation (exit
).
You may also use srun
to allocate resources:
$ srun -N 1 -p cpu-genoa --x11 --pty --interactive bash |
Packages can be installed via Julia's package manager in your local depot.