44 #ifndef KOKKOS_QTHREAD_HPP 45 #define KOKKOS_QTHREAD_HPP 49 #include <Kokkos_Core.hpp> 51 #include <Kokkos_MemoryTraits.hpp> 52 #include <Kokkos_HostSpace.hpp> 53 #include <Kokkos_ExecPolicy.hpp> 54 #include <impl/Kokkos_Tags.hpp> 81 typedef memory_space::size_type size_type ;
89 static Qthread & instance(
int = 0 );
120 static int in_parallel();
122 static int is_initialized();
125 static int concurrency();
127 static void initialize(
int thread_count );
131 static void print_configuration( std::ostream & ,
const bool detail =
false );
133 int shepherd_size()
const ;
134 int shepherd_worker_size()
const ;
148 struct VerifyExecutionCanAccessMemorySpace
153 enum { value =
true };
154 inline static void verify(
void ) { }
155 inline static void verify(
const void * ) { }
165 #include <Qthread/Kokkos_QthreadExec.hpp> 166 #include <Qthread/Kokkos_Qthread_Parallel.hpp> Scratch memory space associated with an execution space.
Qthread execution_space
Tag this class as an execution space.
Execution space supported by Qthread.
Memory space for main process and CPU execution spaces.
Memory management for host memory.
Memory layout tag indicating right-to-left (C or lexigraphical scheme) striding of multi-indices...
Declaration of various MemoryLayout options.
Declaration of parallel operators.
void finalize()
Finalize the spaces that were initialized via Kokkos::initialize.
Kokkos::Device< execution_space, memory_space > device_type
This execution space preferred device_type.