Building FastEddy on AMD GPU Accelerated platforms

These instructions will help users get started with building FastEddy for systems with AMD GPU accelerators. This can be beneficial for users who have allocations on

Compilation

FastEddy requires a C-compiler, MPI, and CUDA.

  1. Download the source code from the Releases page and unpack the release in the desired location or clone the repository in the desired location.

  2. Navigate to the SRC/FEMAIN directory.

  3. To build the FastEddy executable run make -f Makfile.hip (optionally run make clean first if appropriate).

You may need to define a few environment variables that influence the build process to properly set the paths to various dependencies and to select the target GPU.

  • ROCM_PATH : This is the path to your ROCm installation. This variable defaults to /opt/rocm. However, on some systems, multiple versions of ROCm may be available via environment modules and this variable may need to be adjusted accordingly.

  • MPI_ROOT : This is the path to your MPI installation. Since this environment variable is not necessarily defined through an HPC center’s environment modules, it is recommended that you set this variable appropriately.

  • NETCDF_C_ROOT: This is the path to your NetCDF-C installation. Since this environment variable is not necessarily defined through an HPC center’s environment modules, it is recommended that you set this variable appropriately.

  • GPU_ARCH : This is the AMD GPU architecture code for the target GPU you want to build for. This variable defaults to gfx90a, which corresponds to the MI210, MI250, and MI250X GPUs.

The FastEddy executable will be located in the SRC/FEMAIN directory. To build on other HPC systems with NVIDIA GPUs, check for availability of the aformentioned modules/dependencies. Successful compilation may require modifications to shell environment variable include or library paths, or alternatively minor adjustments to the include or library flags in SRC/FEMAIN/Makefile.hip.