Skip to content

Add dependency to Rapids Memory Manager when building ParFlowGPU #104

@kvrigor

Description

@kvrigor

@mfahdaz suggested that enabling Rapids Memory Manager (RMM) on a ParFlow CUDA build significantly boosts ParFlow performance. It might be best to enable RMM by default when building ParFlowGPU.

TODO:

  • Add RMM to appropriate environment file/s.
  • Add RMM_ROOT=/path/to/RMM/install to ParFlow build args

ExternalProject_Add(ParFlow
PREFIX ParFlow
SOURCE_DIR ${PARFLOW_SRC}
CMAKE_ARGS -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_C_FLAGS=${PF_CFLAGS}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER}
-DCMAKE_Fortran_FLAGS=${PF_FFLAGS}
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
-DPARFLOW_ENABLE_HYPRE=ON
-DPARFLOW_ENABLE_NETCDF=ON
-DPARFLOW_AMPS_SEQUENTIAL_IO=ON
-DPARFLOW_ENABLE_TIMING=TRUE
-DPARFLOW_ACCELERATOR_BACKEND=${PF_ACC_BACKEND}
-DMPIEXEC_EXECUTABLE=${MPIEXEC_EXECUTABLE}
-DMPIEXEC_NUMPROC_FLAG=${MPIEXEC_NUMPROC_FLAG}
-DPARFLOW_ENABLE_SLURM=${ENABLE_SLURM}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions