Skip to content

Commit ec8a676

Browse files
authored
Merge pull request #685 from bedroge/symlink_cvmfs_reload
add `cvmfs_config reload` step to GPU instructions, and add tip about EESSI-specific config files
2 parents 963ff62 + e8cd23e commit ec8a676

1 file changed

Lines changed: 17 additions & 3 deletions

File tree

  • docs/site_specific_config

docs/site_specific_config/gpu.md

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,12 @@ sudo bash -c "echo 'EESSI_NVIDIA_OVERRIDE_DEFAULT=/opt/eessi/nvidia' >> /etc/cvm
4949
sudo bash -c "echo 'EESSI_HOST_INJECTIONS=/desired/path/to/host/injections' >> /etc/cvmfs/default.local"
5050
```
5151

52-
Third, you run the helper script
52+
*Step 3:* To actually reconfigure the variant symlinks, reload the updated CernVM-FS configuration using:
53+
```{ .bash copy }
54+
sudo cvmfs_config reload software.eessi.io
55+
```
56+
57+
*Step 4:* Run the helper script:
5358

5459
```{ .bash .copy }
5560
/cvmfs/software.eessi.io/versions/${EESSI_VERSION}/scripts/gpu_support/nvidia/link_nvidia_host_libraries.sh
@@ -67,6 +72,13 @@ Third, you run the helper script
6772
sudo bash -c "echo 'EESSI_202506_NVIDIA_OVERRIDE=/opt/eessi/2025.06/nvidia' >> /etc/cvmfs/default.local"
6873
```
6974

75+
!!! tip "Use a EESSI-specific CernVM-FS configuration file to configure the variant symlinks"
76+
Instead of using `/etc/cvmfs/default.local` you can also put the symlink configuration in a local configuration file that is specific to the `software.eessi.io` repository
77+
or to the `eessi.io` domain.
78+
For the first you can use `/etc/cvmfs/config.d/software.eessi.io.local`, while for the latter you can use `/etc/cvmfs/domain.d/eessi.io.local`.
79+
For more details about the different configuration files,
80+
see [the configuration hierarchy section of our CernVM-FS tutorial](https://www.eessi.io/docs/training-events/2025/tutorial-best-practices-cvmfs-hpc/access/client/#configuration_hierarchy).
81+
7082
!!! note "How does EESSI find the linked drivers?"
7183

7284
The runtime linker provided by the EESSI [compatibility layer](../compatibility_layer.md) is configured to search an
@@ -79,11 +91,13 @@ Third, you run the helper script
7991
If, for some reason, the helper script is unable to locate the drivers on your system you _can_ link them manually.
8092
To do so, grab the list of libraries that need to be symlinked from [here](https://raw.githubusercontent.com/apptainer/apptainer/main/etc/nvliblist.conf).
8193
Then, change to the correct directory:
94+
8295
- For EESSI 2025.06 and later: `/cvmfs/software.eessi.io/versions/${EESSI_VERSION}>/compat/${EESSI_OS_TYPE}/${EESSI_CPU_FAMILY}/lib/nvidia`,
8396
- For EESSI 2023.06: `/cvmfs/software.eessi.io/host_injections/${EESSI_VERSION}/compat/${EESSI_OS_TYPE}/${EESSI_CPU_FAMILY}/lib`
97+
8498
Then, manually create the symlinks for each of the files in the aforementioned list (if they exist on your system) to the current directory.
8599

86-
#### Runtime support when using EESSI in a container: {: #nvidia_eessi_container }
100+
#### Runtime support when using EESSI in a container {: #nvidia_eessi_container }
87101

88102
If you are running your own [Apptainer](https://apptainer.org/)/[Singularity](https://sylabs.io/singularity) container,
89103
it is sufficient to use the [`--nv` option](https://apptainer.org/docs/user/latest/gpu.html#nvidia-gpus-cuda-standard)
@@ -140,7 +154,7 @@ Thus, you may want to periodically run this script to pick up on new CUDA and cu
140154
$ ls -l /cvmfs/software.eessi.io/versions/2023.06/software/linux/x86_64/amd/zen3/software/CUDA/12.1.1/bin/nvcc
141155
lrwxrwxrwx 1 cvmfs cvmfs 109 Dec 21 14:49 /cvmfs/software.eessi.io/versions/2023.06/software/linux/x86_64/amd/zen3/software/CUDA/12.1.1/bin/nvcc -> /cvmfs/software.eessi.io/host_injections/2023.06/software/linux/x86_64/amd/zen3/software/CUDA/12.1.1/bin/nvcc
142156
```
143-
the `/cvmfs/software.eessi.io/host_injections` directory is special, since it is not part of the actual EESSI repository:
157+
The `/cvmfs/software.eessi.io/host_injections` directory is special, since it is not part of the actual EESSI repository:
144158
it is a CernVM-FS [Variant Symlink](https://cvmfs.readthedocs.io/en/stable/cpt-repo.html#variant-symlinks) that points to
145159
a directory on the local system (`/opt/eessi` by default).
146160
The `install_cuda_and_libraries.sh` script installs CUDA and cuDNN in this local directory, thus un-breaking the symlinks.

0 commit comments

Comments
 (0)