A mini-app to use HYPRE solvers and preconditioners on linear systems generated by the nalu-wind low-Mach code.
This app reads the linear system matrix, RHS, and reference solution data in MatrixMarket and HYPRE IJ formats. See example input file for available options.
- Working C++ and C compilers. C++ compiler must support C++11 or higher.
- Working MPI installation. Need access to
mpicc
wrappers.
The mini-app also depends on HYPRE and YAML-CPP that are available within the repository as submodules. The build script will compile these submodules as part of the build process.
git clone --recurse-submodules git@github.com:Exawind/hypre.git
cd hypre_app
# create build directory
mkdir build
cd build
# Copy sample build script
cp ../etc/build_script_tmpl.sh mini-app-build.sh
# Edit build script and add necessary configuration
# Build hypre, configure mini-app and compile
./mini-app-build.sh
# Execute (see etc/hypre_app.yaml for an example input file)
mpiexec -np <N> src/hypre_app INPUT_FILE