Skip to content

First-time user observations and error #28

@paulmelis

Description

@paulmelis

First up, great that someone's working on making Julia use on HPC systems easier!

As I'm now trying JUHPC for the first time here's some things I noticed/ran into. Background: viz guy at Dutch HPC site, so consider me an "internal user" of our system :)

First, there's a lot of output coming not just from JUHPC, but also some of the programs it calls itself. This is a bit confusing, as it's not immediately clear what to pay attention to and what can be ignored. Example below, apparently stuff gets installed in a tempdir, which resolves to /dev/shm on our system, which is fairly non-standard, but okay. The thing I wasn't clear on was if "You can uninstall at any time with juliaup self uninstall and these changes will be reverted" was something I needed to remember or not. It's only at the end when it reads "cleaning up temporary juliaup installation in /dev/shm/paulm/juliaup" that I figured all the /dev/shm stuff was not relevant for the end result. Perhaps putting all that output in a log file would be better, as it hides unnecessary details that aren't of interest to the average user.

...
info: downloading installer
Welcome to Julia!

This will download and install the official Julia Language distribution
and its version manager Juliaup.

Juliaup will be installed into the Juliaup home directory, located at:

  /dev/shm/paulm/juliaup

The julia, juliaup and other commands will be added to
Juliaup's bin directory, located at:

  /dev/shm/paulm/juliaup/bin

You can uninstall at any time with juliaup self uninstall and these
changes will be reverted.
...
[ JUHPC: cleaning up temporary juliaup installation in /dev/shm/paulm/juliaup.
[ JUHPC: ... The installation of the HPC setup for juliaup, julia and HPC key packages is complete.

For the lines below a similar thing applies, as I assume the "re-start Julia" instruction really is just a detail that isn't relevant for JUHPC installation.

Precompiling project...
  75 dependencies successfully precompiled in 322 seconds. 23 already precompiled.
[ Info: Configure the active project to use CUDA 12.6 from the local system; please re-start Julia for this to take effect.

After then trying to activate the installed JUHPC environment it seems the first steps are okay:

snellius paulm@tcn965 14:30 ~/c/JUHPC$ module list

Currently Loaded Modules:
  1) 2024                           5) GCC/13.3.0                      9) libpciaccess/0.18.1-GCCcore-13.3.0  13) UCX/1.16.0-GCCcore-13.3.0        17) UCC/1.3.0-GCCcore-13.3.0
  2) GCCcore/13.3.0                 6) numactl/2.0.18-GCCcore-13.3.0  10) hwloc/2.10.0-GCCcore-13.3.0         14) libfabric/1.21.0-GCCcore-13.3.0  18) OpenMPI/5.0.3-GCC-13.3.0
  3) zlib/1.3.1-GCCcore-13.3.0      7) XZ/5.4.5-GCCcore-13.3.0        11) OpenSSL/3                           15) PMIx/5.0.2-GCCcore-13.3.0        19) gompi/2024a
  4) binutils/2.42-GCCcore-13.3.0   8) libxml2/2.12.7-GCCcore-13.3.0  12) libevent/2.1.12-GCCcore-13.3.0      16) PRRTE/3.0.5-GCCcore-13.3.0       20) CUDA/12.6.0

snellius paulm@tcn965 14:30 ~/c/JUHPC$ source /scratch-shared/paulm/juhpc_setup_genoa/activate 
[ JUHPC: Activating HPC setup for juliaup, julia and HPC key packages requiring system libraries...
[ JUHPC: PATH: /scratch-shared/paulm/juhpc_setup_genoa/juliaup_wrapper:/scratch-shared/paulm/juhpc_setup_genoa/bin:/sw/arch/RHEL9/EB_production/2024/software/CUDA/12.6.0/nvvm/bin:/sw/arch/RHEL9/EB_production/2024/software/CUDA/12.6.0/bin:/sw/arch/RHEL9/EB_production/2024/software/OpenMPI/5.0.3-GCC-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/UCC/1.3.0-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/PRRTE/3.0.5-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/PMIx/5.0.2-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/libfabric/1.21.0-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/UCX/1.16.0-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/libevent/2.1.12-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/OpenSSL/3/bin:/sw/arch/RHEL9/EB_production/2024/software/hwloc/2.10.0-GCCcore-13.3.0/sbin:/sw/arch/RHEL9/EB_production/2024/software/hwloc/2.10.0-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/libxml2/2.12.7-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/XZ/5.4.5-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/numactl/2.0.18-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/binutils/2.42-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/GCCcore/13.3.0/bin:/scratch-shared/paulm/juhpc_setup_genoa/juliaup_wrapper:/scratch-shared/paulm/juhpc_setup_genoa/bin:/gpfs/admin/hpc/usertools:/bin:/home/paulm/.local/bin:/home/paulm/software/bob:/home/paulm/bin:/gpfs/admin/hpc/sw/hpc/bin:/gpfs/admin/hpc/sw/hpc/sbin:/opt/neovim/current/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
[ JUHPC: JULIAUP_DEPOT_PATH: /scratch-shared/paulm/juhpc_setup_genoa/depot
[ JUHPC: JULIA_DEPOT_PATH: /scratch-shared/paulm/juhpc_setup_genoa/depot
[ JUHPC: JULIA_LOAD_PATH: :/scratch-shared/paulm/juhpc_setup_genoa/julia_preferences
[ JUHPC: CUDA_HOME: /sw/arch/RHEL9/EB_production/2024/software/CUDA/12.6.0
[ JUHPC: JULIA_CUDA_MEMORY_POOL: none

But not having a julia available is somewhat surprising:

snellius paulm@tcn965 14:31 ~/c/JUHPC$ which julia
/usr/bin/which: no julia in (/scratch-shared/paulm/juhpc_setup_genoa/juliaup_wrapper:/scratch-shared/paulm/juhpc_setup_genoa/bin:/sw/arch/RHEL9/EB_production/2024/software/CUDA/12.6.0/nvvm/bin:/sw/arch/RHEL9/EB_production/2024/software/CUDA/12.6.0/bin:/sw/arch/RHEL9/EB_production/2024/software/OpenMPI/5.0.3-GCC-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/UCC/1.3.0-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/PRRTE/3.0.5-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/PMIx/5.0.2-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/libfabric/1.21.0-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/UCX/1.16.0-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/libevent/2.1.12-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/OpenSSL/3/bin:/sw/arch/RHEL9/EB_production/2024/software/hwloc/2.10.0-GCCcore-13.3.0/sbin:/sw/arch/RHEL9/EB_production/2024/software/hwloc/2.10.0-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/libxml2/2.12.7-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/XZ/5.4.5-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/numactl/2.0.18-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/binutils/2.42-GCCcore-13.3.0/bin:/sw/arch/RHEL9/EB_production/2024/software/GCCcore/13.3.0/bin:/scratch-shared/paulm/juhpc_setup_genoa/juliaup_wrapper:/scratch-shared/paulm/juhpc_setup_genoa/bin:/gpfs/admin/hpc/usertools:/bin:/home/paulm/.local/bin:/home/paulm/software/bob:/home/paulm/bin:/gpfs/admin/hpc/sw/hpc/bin:/gpfs/admin/hpc/sw/hpc/sbin:/opt/neovim/current/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin)

And juliaup is where I would expect it, but running that gives me an error:

snellius paulm@tcn965 14:31 ~/c/JUHPC$ which juliaup
/scratch-shared/paulm/juhpc_setup_genoa/juliaup_wrapper/juliaup

snellius paulm@tcn965 14:31 ~/c/JUHPC$ juliaup


     ???  ???   ???  ???  ??????????  ???????
     ???  ???   ???  ???  ???????????????????
     ???  ???   ???  ???????????????????     
???  ???  ???   ???  ??????????????? ???     
????????  ?????????  ???  ??????     ????????
 ??????    ???????   ???  ??????      ???????


[ JUHPC: This is the first call to juliaup: installing juliaup and the latest julia...

info: downloading installer
Welcome to Julia!

This will download and install the official Julia Language distribution
and its version manager Juliaup.

Juliaup will be installed into the Juliaup home directory, located at:

  /scratch-shared/paulm/juhpc_setup_genoa

The julia, juliaup and other commands will be added to
Juliaup's bin directory, located at:

  /scratch-shared/paulm/juhpc_setup_genoa/bin

You can uninstall at any time with juliaup self uninstall and these
changes will be reverted.

You are trying to install Juliaup into the folder
`/scratch-shared/paulm/juhpc_setup_genoa`,
but that folder already exists. Please remove that folder
and then start the setup process again.
[ JUHPC: ERROR: juliaup installation failed.

The error doesn't make much sense to me, as I assumed juliaup was already installed earlier? Since the installation took quite a few minutes and processed a lot of Julia packages. So perhaps something is going wrong on my end?

So with respect to actually using (as an end-user) the installed JUHPC environment I'm unsure what to expect. For example, one of the example scripts in the repo here shows the line . $JUHPC_SETUP_INSTALLDIR/activate, but I assume that I don't need to keep $JUHPC_SETUP_INSTALLDIR set, as that would defeat the purpose of having separate install directories?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions