Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/platforms/mlp/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ The Machine Learning Platform (MLP) provides compute, storage and expertise to t
### Getting access

Project administrators (PIs and deputy PIs) of projects on the MLP can to invite users to join their project, before they can use the project's resources on Alps.
This is performed using the [project management tool][ref-account-waldur]
This is performed using the [project management tool][ref-account-waldur].

Once invited to a project, you will receive an email, which you need to create an account and configure [multi-factor authentication][ref-mfa] (MFA).

Expand Down
15 changes: 7 additions & 8 deletions docs/software/sciapps/cp2k.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,20 +54,19 @@ On our systems, CP2K is built with the following dependencies:

!!! note "GPU-aware MPI"
[COSMA] and [DLA-Future] are built with [GPU-aware MPI][ref-communication-cray-mpich-gpu-aware], which requires setting `MPICH_GPU_SUPPORT_ENABLED=1`.
On the HPC platform, `MPICH_GPU_SUPPORT_ENABLED=1` is set by
default.
On [Daint][ref-cluster-daint], `MPICH_GPU_SUPPORT_ENABLED=1` is set by default.

!!! note "CUDA cache path for JIT compilation"
[DBCSR] uses JIT compilation for CUDA kernels.
The default location is in the home directory, which can put unnecessary burden on the filesystem and lead to performance degradation.
Because of this we set `CUDA_CACHE_PATH` to point to the in-memory filesystem in `/dev/shm`.
On the HPC platform, `CUDA_CACHE_PATH` is set to a directory under `/dev/shm` by
default.
On [Daint][ref-cluster-daint], `CUDA_CACHE_PATH` is set to a directory under `/dev/shm` by default.

## Running CP2K

### Running on the HPC platform
### Running on Daint

[Daint][ref-cluster-daint] nodes have [four GH200 GPUs][ref-alps-gh200-node] that have to be configured properly for best performance.
To start a job, two bash scripts are potentially required: a [Slurm] submission script, and a wrapper to start the [CUDA
MPS] daemon so that multiple MPI ranks can use the same GPU.

Expand Down Expand Up @@ -107,10 +106,10 @@ srun --cpu-bind=socket ./mps-wrapper.sh cp2k.psmp -i <CP2K_INPUT> -o <CP2K_OUTPU
`SLURM_CPUS_PER_TASK`.

5. [DBCSR] relies on extensive JIT compilation, and we store the cache in memory to avoid I/O overhead.
This is set by default on the HPC platform, but it's set here explicitly as it's essential to avoid performance degradation.
This is set by default on [Daint][ref-cluster-daint], but it's set here explicitly as it's essential to avoid performance degradation.

6. CP2K's dependencies use GPU-aware MPI, which requires enabling support at runtime.
This is set by default on the HPC platform, but it's set here explicitly as it's a requirement in general for enabling GPU-aware MPI.
This is set by default on [Daint][ref-cluster-daint], but it's set here explicitly as it's a requirement in general for enabling GPU-aware MPI.


* Change <ACCOUNT> to your project account name
Expand Down Expand Up @@ -348,7 +347,7 @@ srun --cpu-bind=socket cp2k.psmp -i <CP2K_INPUT> -o <CP2K_OUTPUT>
for good performance. With [Intel MKL], this is not necessary and one can set `OMP_NUM_THREADS` to
`SLURM_CPUS_PER_TASK`.

* Change <ACCOUNT> to your project account name
* Change `<ACCOUNT>` to your project account name
* Change `<CP2K_UENV>` to the name (or path) of the actual CP2K uenv you want to use
* Change `<PATH_TO_CP2K_DATA_DIR>` to the actual path to the CP2K data directory
* Change `<CP2K_INPUT>` and `<CP2K_OUTPUT>` to the actual input and output files
Expand Down
9 changes: 5 additions & 4 deletions docs/software/sciapps/lammps.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,10 @@ A development view is also provided, which contains all libraries and command-li
uenv start --view develop-gpu lammps/2024:v2
```

### Running LAMMPS with Kokkos on the HPC Platform
### Running LAMMPS with Kokkos on Daint

To start a job, the following bash [Slurm ] submission script is required:
[Daint][ref-cluster-daint] nodes have [four GH200 GPUs][ref-alps-gh200-node] that have to be configured properly for best performance.
To start a job, the following bash [Slurm] submission script is required:

```bash title="run_lammps_kokkos.sh"
#!/bin/bash -l
Expand Down Expand Up @@ -150,7 +151,7 @@ sbatch run_lammps_kokkos.sh
run $t
```

### Running LAMMPS + GPU on the HPC Platform
### Running LAMMPS + GPU on Daint

To start a job, two bash scripts are required: a [Slurm][ref-slurm] submission script, and a wrapper for [CUDA MPS][ref-slurm-gh200-multi-rank-per-gpu].

Expand Down Expand Up @@ -257,7 +258,7 @@ srun --cpu-bind=cores lmp -k on t $OMP_NUM_THREADS -sf kk -in lj_kokkos.in
5. Change `<LAMMPS_UENV>` to the name (or path) of the LAMMPS uenv you want to use.
6. Enable the `kokkos` uenv view.

Note that the same input file `lj_kokkos.in` can be used as with running LAMMPS with Kokkos on the HPC Platform.
Note that the same input file `lj_kokkos.in` can be used as with running LAMMPS with Kokkos on [Daint][ref-cluster-daint].

### Building LAMMPS from source

Expand Down
4 changes: 2 additions & 2 deletions docs/software/sciapps/vasp.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ These are coupled to highly efficient Broyden and Pulay density mixing schemes t

## Running VASP

### Running on the HPC platform
### Running on Daint
A precompiled uenv containing VASP with MPI, OpenMP, OpenACC, HDF5 and Wannier90 support is available.
Due to license restrictions, the VASP images are not directly accessible in the same way as other applications.

Expand Down Expand Up @@ -64,7 +64,7 @@ srun vasp_std
This is not required when using the CUDA MPS wrapper for oversubscription of GPUs.

!!! note
VASP relies on CUDA-aware MPI, which requires `MPICH_GPU_SUPPORT_ENABLED=1` to be set when using Cray MPICH. On the HPC platform including `daint`, this is set by default and does not have to be included in Slurm scripts.
VASP relies on CUDA-aware MPI, which requires `MPICH_GPU_SUPPORT_ENABLED=1` to be set when using Cray MPICH. On [Daint][ref-cluster-daint], this is set by default and does not have to be included in Slurm scripts.



Expand Down