Skip to content

Commit c225fd3

Browse files
committed
third draft of docs
1 parent 524fe0f commit c225fd3

File tree

1 file changed

+21
-10
lines changed

1 file changed

+21
-10
lines changed

docs/eessi.md

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
# EESSI Guide
22

33
## How to Load EESSI
4-
EESSI can be initialised using the following method.
5-
6-
The EESSI environment is sourced (in a non-reversible way) by running:
4+
The EESSI environment can be initialise by running:
75
```[bash]
86
source /cvmfs/software.eessi.io/versions/2023.06/init/bash
97
```
@@ -12,20 +10,20 @@ This is non-reversible because it:
1210
- Changes your `$PATH`, `$MODULEPATH`, `$LD_LIBRARY_PATH`, and other critical environment variables.
1311
- Sets EESSI-specific variables such as `EESSI_ROOT`.
1412

15-
This is the recommended method because it:
16-
- Detects your CPU architecture and OS.
13+
However, it is the recommended method because it:
14+
- Detects system CPU architecture and OS.
1715
- Detects and configures GPU support.
1816
- Prepares the full EESSI software stack.
1917
- Sets up Lmod (environment module system).
2018

21-
The [EESSI docs](https://www.eessi.io/docs/using_eessi/setting_up_environment/) offer another method to load EESSI, in addition to one above. The alternative method only initialises the Lmod module system and does not load a platform-specific setup. For these reasons, it is recommened to use the method detailed above.
19+
The [EESSI docs](https://www.eessi.io/docs/using_eessi/setting_up_environment/) offer another method to load EESSI. This alternative method only initialises the Lmod module system and does not load a platform-specific setup. For these reasons, it is recommended to use the method detailed above.
2220

2321
Successful environment setup will show `{EESSI 2023.06}` at the start of your CLI.
2422

25-
To deactivate your EESSI environment you can either restart your shell using `exec bash` or exit the shell by `exit`.
23+
To deactivate your EESSI environment you can either restart your shell using `exec bash` or exit the shell by running `exit`.
2624

2725
## GPU Support with EESSI
28-
To enable GPU support, you need a site-specific build that has CUDA enabled. For a guide on how to do this, please refer to [docs/image-build.md](../image-build.md).
26+
To enable GPU support, the cluster must be running a site-specific image build that has CUDA enabled. For a guide on how to do this, please refer to [docs/image-build.md](../image-build.md).
2927

3028
### Using GPUs
3129
All CUDA-enabled software in EESSI expects CUDA drivers in a specific `host_injections` directory.
@@ -51,10 +49,23 @@ export PATH=/usr/local/cuda/bin:$PATH
5149
#### Loading EESSI module for the GCC compiler
5250

5351
Running `which gcc` with EESSI initialised should initially show a path `.../2023.06/compat...` which points to the compatibility compiler.
54-
It is important to load a `gcc` version that is compatible with the host's CUDA version:
52+
53+
It is important to load a `gcc` version that is compatible with the host's CUDA version. This can be found by referring to the table below:
54+
55+
To find your cuda version run `nvcc --version`
56+
| **CUDA Version** | **Recommended GCC Module (EESSI 2023.06)** |
57+
|----------------------|---------------------------------------------------------------------|
58+
| CUDA 13.0 | GCC/12.3.0 |
59+
| CUDA 12.3 – 12.5 | GCC/12.3.0 or GCC/12.2.0 (officially supports GCC 12.x) |
60+
| CUDA 12.0 – 12.2 | GCC/12.2.0 (officially listed supported version) |
61+
| CUDA 11.4 – 11.8 | no matching GCC module in EESSI 2023.06 |
62+
| CUDA < 11.4 | not supported |
63+
64+
To load correct ESSI module run, substituing x for the compatible GCC version:
5565
```[bash]
56-
module load GCC/12.3.0
66+
module load GCC/12.x.0
5767
```
68+
5869
Running `which gcc` will now give a path `.../2023.06/software...` which is the full compiler provided by EESSI. This is what we want for CUDA builds.
5970

6071
Now you can run `cmake` and `make` to compile CUDA using EESSI's `gcc`.

0 commit comments

Comments
 (0)