Using Julia on the SCF

Using Julia on the SCF

We provide Julia, including a variety of packages.

Packages

To see what Julia packages we provide, you can run

ls ${JULIA_DEPOT_PATH}/packages

At the moment, it is difficult to have access both to packages that the SCF installs and packages that you install yourself. In general we recommend that you just ask us to install the packages you need.

However if you'd like to maintain your own packages, you can. Unfortunately, you can't use both our packages and packages you install (because Julia makes this hard to set up), so if you choose to maintain your own packages, you'll need to install all the packages you need. Here's how to do it.

First set the JULIA_DEPOT_PATH environment variable to point to where you want to keep your packages; here we'll use the standard location of .julia. You will probably want to do this in your .bashrc file.

export JULIA_DEPOT_PATH=~/.julia

Now, to install packages, e.g., Gaussian mixtures, simply do this in Julia:

using Pkg
Pkg.add("GaussianMixtures")
using GaussianMixtures

By running the 'using' command immediately, Julia will precompile the package.

Versions

You can use Linux environment modules to switch between different Julia versions. This can be done on a one-time basis in a given terminal session or cluster submission script, or can be done in your .bashrc (after the stanza involving ~skel/std.bashrc) to set a default different than the system default. Note that the python/3 and python/3.5 modules are the same.

To switch from Julia 1.4.1 to Julia 1.5.3:

module switch julia/1.4.1 julia/1.5.3

To see what Julia is being used:

module list