2024-09-24 14:49:23 +02:00

53 lines
1.6 KiB
Markdown

# FiniteVolumeGPU
This is a HIP version of the [FiniteVolume code](https://github.com/babrodtk/FiniteVolumeGPU). It is a Python software package that implements several finite volume discretizations on Cartesian grids for the shallow water equations and the Euler equations.
## Setup on LUMI-G
Here is a step-by-step guide on installing packages on LUMI-G
### Step 1: Install rocm-5.2.5 with Easybuild
```
export EBU_USER_PREFIX=/project/project_xxxxxx/EasyBuild
ml LUMI/24.03 partition/G
ml EasyBuild-user
export PYTHONIOENCODING=utf-8
eb rocm-5.2.5.eb -r
```
### Step 2: run conda-container
Installation via conda can be done as:
```
ml LUMI/24.03 partition/G
ml lumi-container-wrapper/0.3.3-cray-python-3.11.7
```
```
conda-containerize new --prefix MyCondaEnv conda_environment_lumi.yml
```
where the file `conda_environment_lumi.yml` contains packages to be installed.
### Step 3: Set the env. variable to search for binaries
```
export the bin path: export PATH="$PWD/MyCondaEnv/bin:$PATH"
```
### An alternative: Convert to a singularity container with cotainr
```
cotainr build my_container.sif --system=lumi-g --conda-env=conda_environment_lumi.yml
```
### Error when running MPI.
```
`MPI startup(): PMI server not found. Please set I_MPI_PMI_LIBRARY variable if it is not a singleton case.
```
This can be resolved by exporting this:
```
export I_MPI_PMI_LIBRARY=/opt/cray/pe/mpich/8.1.27/ofi/cray/14.0/lib/libmpi.so
```
### Install hip-python
```
python -m pip install -i https://test.pypi.org/simple/ hip-python==5.4.3.470.16
```
The testing was done with this specific version `hip-python==5.4.3.470.16`