diff --git a/packages/tpetra/core/compat/Tpetra_KokkosCompat_ClassicNodeAPI_Wrapper.hpp b/packages/tpetra/core/compat/Tpetra_KokkosCompat_ClassicNodeAPI_Wrapper.hpp index d8d146bb3348..19c6aa492ce0 100644 --- a/packages/tpetra/core/compat/Tpetra_KokkosCompat_ClassicNodeAPI_Wrapper.hpp +++ b/packages/tpetra/core/compat/Tpetra_KokkosCompat_ClassicNodeAPI_Wrapper.hpp @@ -43,6 +43,18 @@ class KokkosDeviceWrapperNode { /// release. This Node type is safe to use. static constexpr bool classic = false; + //! Whether the ExecutionSpace is Kokkos::Serial. +#ifdef KOKKOS_ENABLE_SERIAL + static constexpr bool is_serial = std::is_same_v; +#else + static constexpr bool is_serial = false; +#endif + + //! Whether the ExecutionSpace is CPU-like (its default memory space is HostSpace) + static constexpr bool is_cpu = std::is_same_v; + //! Whether the ExecutionSpace is GPU-like (its default memory space is not HostSpace) + static constexpr bool is_gpu = !is_cpu; + KokkosDeviceWrapperNode (Teuchos::ParameterList& /* params */) = delete; KokkosDeviceWrapperNode () = delete;