40 template<
typename TPlatform,
typename TSfinae>
60 DevCpu() : m_spDevCpuImpl(
std::make_shared<cpu::detail::DevCpuImpl>())
72 return !((*this) == rhs);
77 return m_spDevCpuImpl->getAllExistingQueues();
84 m_spDevCpuImpl->registerQueue(spQueue);
93 std::shared_ptr<cpu::detail::DevCpuImpl> m_spDevCpuImpl;
100 struct GetName<DevCpu>
110 struct GetMemBytes<DevCpu>
120 struct GetFreeMemBytes<DevCpu>
130 struct GetWarpSizes<DevCpu>
140 struct GetPreferredWarpSize<DevCpu>
165 return dev.getNativeHandle();
170 template<
typename TElem,
typename TDim,
typename TIdx>
176 template<
typename TElem,
typename TDim,
typename TIdx>
#define ALPAKA_DEBUG_FULL_LOG_SCOPE
auto operator!=(DevCpu const &rhs) const -> bool
auto getNativeHandle() const noexcept
auto operator==(DevCpu const &) const -> bool
ALPAKA_FN_HOST auto getAllQueues() const -> std::vector< std::shared_ptr< cpu::ICpuQueue > >
ALPAKA_FN_HOST auto registerQueue(std::shared_ptr< cpu::ICpuQueue > spQueue) const -> void
Registers the given queue on this device. NOTE: Every queue has to be registered for correct function...
auto getTotalGlobalMemSizeBytes() -> std::size_t
auto getFreeGlobalMemSizeBytes() -> std::size_t
auto getCpuName() -> std::string
The alpaka accelerator library.
ALPAKA_FN_HOST constexpr auto getPreferredWarpSize(TDev const &dev) -> std::size_t
ALPAKA_FN_HOST auto getName(TDev const &dev) -> std::string
ALPAKA_FN_HOST auto getWarpSizes(TDev const &dev) -> std::vector< std::size_t >
ALPAKA_FN_HOST auto reset(TDev const &dev) -> void
Resets the device. What this method does is dependent on the accelerator.
QueueGenericThreadsBlocking< DevCpu > QueueCpuBlocking
ALPAKA_FN_HOST auto getFreeMemBytes(TDev const &dev) -> std::size_t
ALPAKA_FN_HOST auto getMemBytes(TDev const &dev) -> std::size_t
decltype(getNativeHandle(std::declval< TImpl >())) NativeHandle
Alias to the type of the native handle.
QueueGenericThreadsNonBlocking< DevCpu > QueueCpuNonBlocking
The CPU/GPU device queue registry implementation.
Tag used in class inheritance hierarchies that describes that a specific interface (TInterface) is im...
The memory buffer type trait.
static auto getNativeHandle(TImpl const &)
Queue for an accelerator.