44 #ifndef KOKKOS_CORE_HPP 45 #define KOKKOS_CORE_HPP 50 #include <Kokkos_Core_fwd.hpp> 52 #if defined( KOKKOS_ENABLE_SERIAL ) 56 #if defined( KOKKOS_ENABLE_OPENMP ) 57 #include <Kokkos_OpenMP.hpp> 61 #include <Kokkos_OpenMPTarget.hpp> 62 #include <Kokkos_OpenMPTargetSpace.hpp> 65 #if defined( KOKKOS_ENABLE_QTHREADS ) 66 #include <Kokkos_Qthreads.hpp> 69 #if defined( KOKKOS_ENABLE_THREADS ) 70 #include <Kokkos_Threads.hpp> 73 #if defined( KOKKOS_ENABLE_CUDA ) 74 #include <Kokkos_Cuda.hpp> 78 #include <Kokkos_MemoryPool.hpp> 79 #include <Kokkos_Array.hpp> 80 #include <Kokkos_View.hpp> 83 #include <Kokkos_hwloc.hpp> 84 #include <Kokkos_Timer.hpp> 86 #include <Kokkos_Complex.hpp> 94 struct InitArguments {
106 void initialize(
int& narg,
char* arg[]);
108 void initialize(
const InitArguments& args = InitArguments());
132 template<
class Space =
typename Kokkos::DefaultExecutionSpace::memory_space >
134 void * kokkos_malloc(
const std::string & arg_alloc_label
135 ,
const size_t arg_alloc_size )
137 typedef typename Space::memory_space MemorySpace ;
138 return Impl::SharedAllocationRecord< MemorySpace >::
139 allocate_tracked( MemorySpace() , arg_alloc_label , arg_alloc_size );
142 template<
class Space =
typename Kokkos::DefaultExecutionSpace::memory_space >
144 void * kokkos_malloc(
const size_t arg_alloc_size )
146 typedef typename Space::memory_space MemorySpace ;
147 return Impl::SharedAllocationRecord< MemorySpace >::
148 allocate_tracked( MemorySpace() ,
"no-label" , arg_alloc_size );
151 template<
class Space =
typename Kokkos::DefaultExecutionSpace::memory_space >
153 void kokkos_free(
void * arg_alloc )
155 typedef typename Space::memory_space MemorySpace ;
156 return Impl::SharedAllocationRecord< MemorySpace >::
157 deallocate_tracked( arg_alloc );
160 template<
class Space =
typename Kokkos::DefaultExecutionSpace::memory_space >
162 void * kokkos_realloc(
void * arg_alloc ,
const size_t arg_alloc_size )
164 typedef typename Space::memory_space MemorySpace ;
165 return Impl::SharedAllocationRecord< MemorySpace >::
166 reallocate_tracked( arg_alloc , arg_alloc_size );
Declaration and definition of Kokkos::Vectorization interface.
void print_configuration(std::ostream &, const bool detail=false)
Print "Bill of Materials".
Declaration and definition of Kokkos::pair.
Declaration and definition of Kokkos::Serial device.
void finalize_all()
Finalize all known execution spaces.
void finalize()
Finalize the spaces that were initialized via Kokkos::initialize.