alpaka
Abstraction Library for Parallel Kernel Acceleration
TestAccs.hpp File Reference
#include "alpaka/alpaka.hpp"
#include "alpaka/test/dim/TestDims.hpp"
#include "alpaka/test/idx/TestIdxs.hpp"
#include <iosfwd>
#include <tuple>
#include <type_traits>

Go to the source code of this file.

Classes

struct  alpaka::test::detail::StreamOutAccName
 The accelerator name write wrapper. More...
 

Namespaces

 alpaka
 The alpaka accelerator library.
 
 alpaka::test
 The test specifics.
 
 alpaka::test::detail
 The detail namespace is used to separate implementation details from user accessible code.
 

Typedefs

template<typename TDim , typename TIdx >
using alpaka::test::detail::AccCpuOmp2BlocksIfAvailableElseInt = AccCpuOmp2Blocks< TDim, TIdx >
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccCpuOmp2ThreadsIfAvailableElseInt = AccCpuOmp2Threads< TDim, TIdx >
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccCpuSerialIfAvailableElseInt = AccCpuSerial< TDim, TIdx >
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccCpuSyclIfAvailableElseInt = int
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccCpuTbbIfAvailableElseInt = int
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccCpuThreadsIfAvailableElseInt = AccCpuThreads< TDim, TIdx >
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccFpgaSyclIntelIfAvailableElseInt = int
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccGpuCudaRtIfAvailableElseInt = int
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccGpuHipRtIfAvailableElseInt = int
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccGpuSyclIntelIfAvailableElseInt = int
 
template<typename TList >
using alpaka::test::detail::ApplyEnabledAccs = meta::Apply< TList, EnabledAccs >
 
template<typename TDim , typename TIdx >
using alpaka::test::EnabledAccs = typename meta::Filter< detail::EnabledAccsElseInt< TDim, TIdx >, std::is_class >
 A vector containing all available accelerators. More...
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::EnabledAccsElseInt = std::tuple< AccCpuSerialIfAvailableElseInt< TDim, TIdx >, AccCpuThreadsIfAvailableElseInt< TDim, TIdx >, AccCpuTbbIfAvailableElseInt< TDim, TIdx >, AccCpuOmp2BlocksIfAvailableElseInt< TDim, TIdx >, AccCpuOmp2ThreadsIfAvailableElseInt< TDim, TIdx >, AccGpuCudaRtIfAvailableElseInt< TDim, TIdx >, AccGpuHipRtIfAvailableElseInt< TDim, TIdx >, AccCpuSyclIfAvailableElseInt< TDim, TIdx >, AccFpgaSyclIntelIfAvailableElseInt< TDim, TIdx >, AccGpuSyclIntelIfAvailableElseInt< TDim, TIdx > >
 A vector containing all available accelerators and int's. More...
 
using alpaka::test::detail::InstantiatedEnabledAccs = meta::Transform< TestDimIdxTuples, ApplyEnabledAccs >
 A std::tuple containing std::tuple with fully instantiated accelerators. More...
 
using alpaka::test::TestAccs = meta::Apply< detail::InstantiatedEnabledAccs, meta::Concatenate >
 A std::tuple containing fully instantiated accelerators. More...
 
using alpaka::test::detail::TestDimIdxTuples = meta::CartesianProduct< std::tuple, NonZeroTestDims, TestIdxs >
 A std::tuple holding multiple std::tuple consisting of a dimension and a idx type. More...
 

Functions

template<typename TDim , typename TIdx >
ALPAKA_FN_HOST auto alpaka::test::writeEnabledAccs (std::ostream &os) -> void
 Writes the enabled accelerators to the given stream. More...