Always build with MPI and search for SuperLU and Quadmath.
Concerning MPI, both DUNE and OPM must be compiled with the same default. For DUNE that is to used MPI if it is found. With the previous default Cmake in opm-grid would fail for DUNE 2.8 Even if SuperLU is found umfpack will be used as the coarse solver for AMG. But if dune-fem is used that will need SuperL if it is on the system otherwise linking will fail for DUNE 2.8 Quadmath is used by dune-fem if it is found and linking of flow will fail in this case for DUNE 2.8 if we did not search for it.
This commit is contained in:
@@ -130,7 +130,7 @@ endif ()
|
||||
|
||||
# parallel computing must be explicitly enabled
|
||||
# This needs to be in OpmInit as prereqs is called before OpmLibMain is included.
|
||||
option (USE_MPI "Use Message Passing Interface for parallel computing" OFF)
|
||||
option (USE_MPI "Use Message Passing Interface for parallel computing" ON)
|
||||
if (NOT USE_MPI)
|
||||
set (CMAKE_DISABLE_FIND_PACKAGE_MPI TRUE)
|
||||
endif ()
|
||||
@@ -144,7 +144,7 @@ set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
|
||||
# quadmath must be explicitly enabled
|
||||
# This needs to be in OpmInit as prereqs is called before OpmLibMain is included.
|
||||
option (USE_QUADMATH "Use high precision floating point library (slow)" OFF)
|
||||
option (USE_QUADMATH "Use high precision floating point library (slow)" ON)
|
||||
if (NOT USE_QUADMATH)
|
||||
set (CMAKE_DISABLE_FIND_PACKAGE_QuadMath TRUE)
|
||||
endif ()
|
||||
|
||||
@@ -64,7 +64,7 @@ include (UseThreads)
|
||||
find_threads (${project})
|
||||
|
||||
# SuperLU is optional
|
||||
option (USE_SUPERLU "Use SuperLU direct solvers" OFF)
|
||||
option (USE_SUPERLU "Use SuperLU direct solvers for AMG (if umfpack is not found)" ON)
|
||||
|
||||
# PETSc is optional
|
||||
option (USE_PETSC "Use PETSc iterative solvers" OFF)
|
||||
|
||||
Reference in New Issue
Block a user