@@ -615,7 +615,7 @@ list(APPEND build_list pugixml )
615615################################
616616if (ENABLE_TRILINOS)
617617 set (TRILINOS_DIR "${CMAKE_INSTALL_PREFIX} /trilinos" )
618- set (TRILINOS_URL "${TPL_MIRROR_DIR} /trilinos-release-12-18-1 .tar.gz" )
618+ set (TRILINOS_URL "${TPL_MIRROR_DIR} /trilinos-release-13-0-0 .tar.gz" )
619619
620620 message (STATUS "Building TRILINOS found at ${TRILINOS_URL} " )
621621
@@ -663,8 +663,30 @@ if (ENABLE_TRILINOS)
663663 endif ()
664664
665665 if ( ENABLE_CUDA )
666- set ( TRILINOS_CXX_FLAGS "${TRILINOS_CXX_FLAGS} -ccbin ${TRILINOS_CXX_COMPILER} -arch= ${CUDA_ARCH} - -expt-extended-lambda --expt-relaxed-constexpr" )
666+ set ( TRILINOS_CXX_FLAGS "${TRILINOS_CXX_FLAGS} -ccbin ${TRILINOS_CXX_COMPILER} --expt-extended-lambda --expt-relaxed-constexpr" )
667667 set ( TRILINOS_CXX_COMPILER ${CMAKE_CURRENT_BINARY_DIR} /trilinos/src/trilinos/packages/kokkos/bin/nvcc_wrapper )
668+
669+ # Handle Kokkos_ARCH settings
670+ set ( _KOKKOS_ARCH_sm_30 Kepler30 )
671+ set ( _KOKKOS_ARCH_sm_32 Kepler32 )
672+ set ( _KOKKOS_ARCH_sm_35 Kepler35 )
673+ set ( _KOKKOS_ARCH_sm_37 Kepler37 )
674+ set ( _KOKKOS_ARCH_sm_50 Maxwell50 )
675+ set ( _KOKKOS_ARCH_sm_52 Maxwell52 )
676+ set ( _KOKKOS_ARCH_sm_53 Maxwell53 )
677+ set ( _KOKKOS_ARCH_sm_60 Pascal60 )
678+ set ( _KOKKOS_ARCH_sm_61 Pascal61 )
679+ set ( _KOKKOS_ARCH_sm_70 Volta70 )
680+ set ( _KOKKOS_ARCH_sm_72 Volta72 )
681+ set ( _KOKKOS_ARCH_sm_75 Turing75 )
682+
683+ if ( NOT DEFINED _KOKKOS_ARCH_${CUDA_ARCH} )
684+ message (FATAL_ERROR "Unable to determine Kokkos_ARCH from CUDA_ARCH=${CUDA_ARCH} " )
685+ endif ()
686+ set ( KOKKOS_ARCH ${_KOKKOS_ARCH_${CUDA_ARCH} } )
687+ set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
688+ -D Kokkos_ARCH_${KOKKOS_ARCH} :BOOL =ON )
689+
668690 endif ()
669691
670692 set ( TRILINOS_ENABLE_SERIAL ON )
@@ -723,9 +745,9 @@ if (ENABLE_TRILINOS)
723745 -D Trilinos_ENABLE_TrilinosCouplings:BOOL =OFF
724746 -D Trilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL =ON
725747 -D Trilinos_ENABLE_COMPLEX_DOUBLE:BOOL =OFF
726- -D KOKKOS_ENABLE_CUDA :BOOL =${ENABLE_CUDA}
727- -D KOKKOS_ENABLE_CUDA_LAMBDA :BOOL =${ENABLE_CUDA}
728- -D KOKKOS_ENABLE_CUDA_UVM :BOOL =${ENABLE_CUDA}
748+ -D Kokkos_ENABLE_CUDA :BOOL =${ENABLE_CUDA}
749+ -D Kokkos_ENABLE_CUDA_LAMBDA :BOOL =${ENABLE_CUDA}
750+ -D Kokkos_ENABLE_CUDA_UVM :BOOL =${ENABLE_CUDA}
729751 -D Tpetra_ENABLE_CUDA:BOOL =${ENABLE_CUDA}
730752 -D Tpetra_INST_SERIAL:BOOL =${TRILINOS_ENABLE_SERIAL}
731753 -D Tpetra_INST_INT_LONG_LONG:BOOL =ON
@@ -735,7 +757,7 @@ if (ENABLE_TRILINOS)
735757 -D Belos_ENABLE_Tpetra:BOOL =ON
736758 -D Belos_ENABLE_Epetra:BOOL =OFF
737759 -D Belos_ENABLE_Xpetra:BOOL =OFF
738- -D Ifpack2_ENABLE_ThyraTpetraAdapters:BOOL =OFF
760+ -D Ifpack2_ENABLE_ThyraTpetraAdapters:BOOL =ON
739761 -D Amesos2_ENABLE_TIMERS:BOOL =ON
740762 ${TRILINOS_EXTRA_ARGS}
741763 )
0 commit comments