Skip to content

Commit 48d1fbd

Browse files
authored
Note about AMD's Gromacs fork and HeFFTe (#1694)
* Note about AMD's Gromacs fork * Add HeFFTe module and PME decomp notes * module note
1 parent 5d76751 commit 48d1fbd

File tree

2 files changed

+22
-3
lines changed

2 files changed

+22
-3
lines changed

csc-overrides/assets/glossaries/hpc.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,4 +51,6 @@
5151
*[TLS]: Transport Layer Security
5252
*[HTTP]: Hypertext Transfer Protocol
5353
*[HTTPS]: Hypertext Transfer Protocol Secure
54-
*[SQL]: Structured Query Language
54+
*[SQL]: Structured Query Language
55+
*[GCD]: Graphics Compute Die
56+
*[PME]: Particle-Mesh Ewald

docs/apps/gromacs.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,10 @@ systems. It also comes with plenty of analysis scripts.
4444
| Version | Available modules | Notes |
4545
|:-------:|:------------------|:-----:|
4646
|2022.5 |`gromacs/2022.5`<br>`gromacs/2022.5-plumed`|Module with Plumed available
47-
|2023 |`gromacs/2023-dev-rocm`|Unofficial GPU-enabled fork developed by AMD
48-
|2023.1 |`gromacs/2023.1`<br>`gromacs/2023.1-hipsycl`|GPU-enabled module available
47+
|2023 |`gromacs/2023-dev-rocm`|Unofficial GPU-enabled fork developed by AMD[^1]
48+
|2023.1 |`gromacs/2023.1`<br>`gromacs/2023.1-hipsycl`<br>`gromacs/2023.1-heffte`|Official GPU-enabled modules available (hipSYCL)<br>Module linked to HeFFTe available for GPU PME decomposition
49+
50+
[^1]: This module is unvalidated, unmaintained and unsupported by the Gromacs team. Proceed with caution!
4951

5052
- Puhti and Mahti have also `gromacs-env/<year>` modules for loading the recommended
5153
latest minor version from each year (replace `<year>` accordingly).
@@ -329,6 +331,21 @@ node. Importantly, the amount of GPU nodes on LUMI is massively larger than on M
329331
feature of Gromacs. For more details about GPU-sharing and aggregate sampling, see our
330332
[tutorial on high-throughput simulations with Gromacs](../support/tutorials/gromacs-throughput.md).
331333

334+
#### PME decomposition
335+
336+
Scaling of huge systems with several millions atoms may be limited by single GPU PME. To
337+
significantly improve the scaling, decomposition of PME to multiple GPUs is possible in the
338+
`gromacs/2023.1-heffte` module with the [HeFFTe library](https://icl-utk-edu.github.io/heffte/)
339+
linked. Add the following exports to the batch script above:
340+
341+
```bash
342+
export GMX_GPU_PME_DECOMPOSITION=1
343+
export GMX_PMEONEDD=1
344+
```
345+
346+
The number of PME ranks to use depends on the specific case, but 1 or 2 per GPU *node* should
347+
be a reasonable starting point. So for 16 LUMI-G nodes, use `-npme 16` or `-npme 32`.
348+
332349
### Visualizing trajectories and graphs
333350

334351
In addition to the `view` tool of Gromacs (not available at CSC),

0 commit comments

Comments
 (0)