alpaka
Abstraction Library for Parallel Kernel Acceleration
Loading...
Searching...
No Matches
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

namespace  alpaka
 The alpaka accelerator library.
 
namespace  alpaka::test
 The test specifics.
 
namespace  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::AccGpuSyclAmdIfAvailableElseInt = int
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccGpuSyclIntelIfAvailableElseInt = int
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::AccGpuSyclNvidiaIfAvailableElseInt = 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.
 
template<typename TDim , typename TIdx >
using alpaka::test::detail::EnabledAccsElseInt
 A vector containing all available accelerators and int's.
 
using alpaka::test::detail::InstantiatedEnabledAccs = meta::Transform<TestDimIdxTuples, ApplyEnabledAccs>
 A std::tuple containing std::tuple with fully instantiated accelerators.
 
using alpaka::test::TestAccs = meta::Apply<detail::InstantiatedEnabledAccs, meta::Concatenate>
 A std::tuple containing fully instantiated accelerators.
 
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.
 

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.