From 7c6ab1559b19dc1283d403ab3f27e033f87f3c96 Mon Sep 17 00:00:00 2001
From: j0405284 <stefano.frambati@total.com>
Date: Fri, 22 Dec 2023 11:35:03 +0100
Subject: [PATCH] updated Pangea3 host config with C++17 standard, default to
 CPU hypre implementation

---
 .../TOTAL/pangea3-gcc8.4.1-openmpi-4.1.2.cmake        | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/host-configs/TOTAL/pangea3-gcc8.4.1-openmpi-4.1.2.cmake b/host-configs/TOTAL/pangea3-gcc8.4.1-openmpi-4.1.2.cmake
index bc6b165b..fc224620 100644
--- a/host-configs/TOTAL/pangea3-gcc8.4.1-openmpi-4.1.2.cmake
+++ b/host-configs/TOTAL/pangea3-gcc8.4.1-openmpi-4.1.2.cmake
@@ -1,7 +1,5 @@
 # hostconfig for pangea3
 #
-# export MODULEPATH=/workrd/SCR/NUM/geosx_num/module_files:$MODULEPATH
-# module load cmake/3.21.4 gcc/8.4.1 cuda/11.0.3 ompi/4.1.2 openblas/0.3.18 python4geosx/p3/gcc8.4.1-ompi4.1.2
 #
 set(CONFIG_NAME "pangea3-gcc8.4.1-ompi-4.1.2" CACHE PATH "") 
 
@@ -16,7 +14,7 @@ set(CMAKE_CXX_COMPILER g++ CACHE PATH "")
 set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG -mcpu=power9 -mtune=power9" CACHE STRING "")
 set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-g ${CMAKE_CXX_FLAGS_RELEASE}" CACHE STRING "")
 set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "")
-set(CMAKE_CXX_STANDARD 14 CACHE STRING "")
+set(CMAKE_CXX_STANDARD 17 CACHE STRING "")
 
 # Fortran options
 set(CMAKE_Fortran_COMPILER gfortran CACHE PATH "")
@@ -49,9 +47,8 @@ if (DEFINED ENV{CUDA_ROOT})
   set(CMAKE_CUDA_COMPILER ${CUDA_TOOLKIT_ROOT_DIR}/bin/nvcc CACHE STRING "")
   set(CUDA_ARCH sm_70 CACHE STRING "")
   set(CMAKE_CUDA_ARCHITECTURES 70 CACHE STRING "")
-  set(CMAKE_CUDA_STANDARD 14 CACHE STRING "")
-  ### The inclusion of -std=c++14 is a workaround for a cuda10/gcc8 bug ###
-  set(CMAKE_CUDA_FLAGS "-restrict -arch ${CUDA_ARCH} --expt-extended-lambda -Werror cross-execution-space-call,reorder,deprecated-declarations -Xcompiler -std=c++14" CACHE STRING "")
+  set(CMAKE_CUDA_STANDARD 17 CACHE STRING "")
+  set(CMAKE_CUDA_FLAGS "-restrict -arch ${CUDA_ARCH} --expt-relaxed-constexpr --expt-extended-lambda -Werror cross-execution-space-call,reorder,deprecated-declarations -Xcompiler -std=c++17" CACHE STRING "")
   set(CMAKE_CUDA_FLAGS_RELEASE "-O3 -DNDEBUG -Xcompiler -DNDEBUG -Xcompiler -O3 -Xcompiler -mcpu=powerpc64le -Xcompiler -mtune=powerpc64le" CACHE STRING "")
   set(CMAKE_CUDA_FLAGS_RELWITHDEBINFO "-g -lineinfo ${CMAKE_CUDA_FLAGS_RELEASE}" CACHE STRING "")
   set(CMAKE_CUDA_FLAGS_DEBUG "-g -G -O0 -Xcompiler -O0" CACHE STRING "")
@@ -103,6 +100,6 @@ set(PETSC_OMP_DIR ${GEOSX_TPL_ROOT_DIR}/omp-links-for-petsc CACHE STRING "")
 # PETSc doesn't seem to work correctly with clang.
 set(ENABLE_PETSC OFF CACHE BOOL "")
 set(ENABLE_HYPRE ON CACHE BOOL "")
-set(ENABLE_HYPRE_DEVICE "CUDA" CACHE STRING "")
+set(ENABLE_HYPRE_DEVICE "CPU" CACHE STRING "")
 
 set(SCOTCH_NUM_PROC 1 CACHE STRING "" )