21 #ifndef __KokkosTypes_hpp__
22 #define __KokkosTypes_hpp__
25 #include <Kokkos_Core.hpp>
26 #include <Kokkos_DualView.hpp>
27 #include <Kokkos_UnorderedMap.hpp>
36 template<
typename s
ide>
43 using OpenMP = Kokkos::OpenMP;
51 template<
typename T1,
typename T2>
52 using kPair = Kokkos::pair<T1,T2>;
58 template<
typename T,
typename... properties>
61 template<
typename T,
typename... properties>
64 template<
typename T,
typename... properties>
67 template<
typename T,
typename... properties>
70 template<
typename Key,
typename Value,
typename... properties>
71 using unorderedMap = Kokkos::UnorderedMap<Key, Value, properties...>;
73 template<
typename Key,
typename... properties>
74 using unorderedSet = Kokkos::UnorderedMap<Key, void, properties...>;
76 template<
typename Key,
typename Value>
79 template<
typename Key,
typename Value>
80 using hostHashMap= Kokkos::UnorderedMap<Key, Value, Kokkos::HostSpace>;
82 template<
typename Key>
85 template<
typename Key>
86 using hostHashSet = Kokkos::UnorderedMap<Key,void, Kokkos::HostSpace>;
95 template<
typename T,
typename Layout=
void>
106 template<
typename T,
typename Layout=
void>
111 using Cuda = Kokkos::Cuda;
113 using cudaViewTypeScalar = Kokkos::View<T, Kokkos::CudaSpace>;
116 using cudaViewType1D = Kokkos::View<T*, Kokkos::CudaSpace>;
118 template<
typename T,
typename Layout=
void>
119 using cudaViewType2D = Kokkos::View<T*,Layout, Kokkos::CudaSpace>;
127 Kokkos::MemoryTraits<std::is_same<DefaultExecutionSpace,Serial>::value?0:Kokkos::Atomic>>;
133 Kokkos::MemoryTraits<std::is_same<DefaultExecutionSpace,Serial>::value?0:Kokkos::Atomic>>;
138 #endif //__KokkosTypes_hpp__