Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update docs regarding Ginkgo and Kokkos #426

Merged
merged 3 commits into from
Aug 7, 2024
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
6 changes: 2 additions & 4 deletions pages/docs/configuration/configuration-mapping.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,9 @@ ASTE and our [ASTE tutorial](tutorials-aste-turbine.html) enable full insight in

#### Execution backends

{% experimental %}
Although this feature is well-tested in preCICE, it relies on an unreleased version of Ginkgo. Hence, this feature might change in the future.
{% endexperimental %}
Starting from version 3.2, preCICE offers to execute `mapping:rbf-global...` on different executor backends using the linear-operator library Ginkgo in conjunction with Kokkos.

Starting from version 3, preCICE offers to execute `mapping:rbf-global...` on different executor backends using the linear-operator library Ginkgo
To use this feature, please build preCICE from source with [Ginkgo Mappings enabled](installation-source-dependencies.html#ginkgo).

![RBF executors](images/docs/configuration/doc-mapping-rbf-executors.svg)

Expand Down
13 changes: 12 additions & 1 deletion pages/docs/installation/installation-source-dependencies.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ If you find a problem with preCICE and a latest versions of these dependencies,
| [MPI](#mpi) | implementation of MPI-3 |
| [PETSc](#petsc) | >= 3.12 |
| [Python](#python) | >= 3 |
| [Ginkgo](#ginkgo) | >= 1.8 with Kokkos >= 4.1 |

### C++ compiler

Expand Down Expand Up @@ -132,7 +133,7 @@ The following header-only Boost libraries are also needed: 'asio', `vmd`, `geome
1. [Download](http://www.boost.org/users/download/) and extract Boost into any directory. Switch to that directory.
2. Prepare the installation, selecting only the libraries that need to be built (this does not affect the header-only libraries).
Select a prefix to install Boost to. This will later contain the directories `include` and `lib`.
On systems using modules, we recommend to specify the toolset manually by additionally passing `--with-toolset=gcc` (or `intel`).
On systems using modules, we recommend to specify the toolset manually by additionally passing `--with-toolset=gcc` (or `intel`).

Now run with the prefix of your choice:

Expand Down Expand Up @@ -257,6 +258,16 @@ Keep in mind that already [PETSc](installation-source-dependencies.html#petsc) s
Make sure that PETSc, preCICE, and your solvers are all compiled with the same MPI version!
{% endimportant %}

### Ginkgo

| preCICE | 3.2.0 >= |
| Required Ginkgo | 1.8.0 >= |
| Required Kokkos | 4.1.0 >= |

[Ginkgo](https://ginkgo-project.github.io/) enables support for GPU- and OpenMP-accelerated (global) radial-basis function mappings. To enable the feature in preCICE, use the CMake option `-DPRECICE_FEATURE_GINKGO_MAPPING=ON`. Using this feature in preCICE requires additionally [Kokkos](https://kokkos.org/).

Both packages follow the usual CMake build instructions and can be downloaded on the GitHub release page for [Ginkgo](https://github.com/ginkgo-project/ginkgo/releases) and [Kokkos](https://github.com/kokkos/kokkos/releases). For Kokkos, system packages might be available through your package manager as well.

## System guides

If you want build preCICE on your own computer and you are using one of the following Linux distributions, we provide a summary here to quickly install everything you need. If everything works, you may ignore the rest of this page.
Expand Down
Loading