45 #include "Teuchos_ScalarTraits.hpp" 47 #include "Tpetra_Details_MultiVectorDistObjectKernels.hpp" 48 #include "Tpetra_ConfigDefs.hpp" 50 #if defined(HAVE_TPETRA_EXPLICIT_INSTANTIATION) && TPETRA_USE_KOKKOS_DISTOBJECT 52 #include "TpetraCore_ETIHelperMacros.h" 53 #include "Tpetra_Details_MultiVectorDistObjectKernels_def.hpp" 55 #include "Kokkos_Core.hpp" 60 #define KERNELS_INSTANT_SERIAL(SC,LO) \ 61 KERNELS_INSTANT(SC,LO,Kokkos::Serial) 63 #if defined(KOKKOS_HAVE_PTHREAD) 64 #define KERNELS_INSTANT_THREADS(SC,LO) \ 65 KERNELS_INSTANT(SC,LO,Kokkos::Threads) 67 #define KERNELS_INSTANT_THREADS(SC,LO) 70 #if defined(KOKKOS_HAVE_OPENMP) 71 #define KERNELS_INSTANT_OPENMP(SC,LO) \ 72 KERNELS_INSTANT(SC,LO,Kokkos::OpenMP) 74 #define KERNELS_INSTANT_OPENMP(SC,LO) 77 #define KERNELS_INSTANT_SC_LO(SC,LO) \ 78 KERNELS_INSTANT_SERIAL(SC,LO) \ 79 KERNELS_INSTANT_THREADS(SC,LO) \ 80 KERNELS_INSTANT_OPENMP(SC,LO) 82 TPETRA_ETI_MANGLING_TYPEDEFS()
84 TPETRA_INSTANTIATE_SL(KERNELS_INSTANT_SC_LO)
89 #endif // HAVE_TPETRA_EXPLICIT_INSTANTIATION Namespace Tpetra contains the class and methods constituting the Tpetra library.
Implementation details of Tpetra.