alpaka
Abstraction Library for Parallel Kernel Acceleration
Loading...
Searching...
No Matches
alpaka::test Namespace Reference

The test specifics. More...

Namespaces

namespace  cpu
 
namespace  detail
 The detail namespace is used to separate implementation details from user accessible code.
 
namespace  integ
 
namespace  trait
 
namespace  uniform_cuda_hip
 

Classes

struct  Array
 
class  EventHostManualTriggerCpu
 Event that can be enqueued into a queue and can be triggered by the Host. More...
 
class  EventHostManualTriggerCuda
 
class  KernelExecutionFixture
 The fixture for executing a kernel on a given accelerator. More...
 
struct  QueueTestFixture
 
struct  VerifyBytesSetKernel
 Compares element-wise that all bytes are set to the same value. More...
 
struct  VerifyViewsEqualKernel
 Compares iterators element-wise. More...
 

Typedefs

template<typename TDev >
using DefaultQueue = typename trait::DefaultQueueType< TDev >::type
 The queue type that should be used for the given device.
 
template<typename TDim , typename TIdx >
using EnabledAccs = typename meta::Filter< detail::EnabledAccsElseInt< TDim, TIdx >, std::is_class >
 A vector containing all available accelerators.
 
template<typename TDev >
using EventHostManualTrigger = typename trait::EventHostManualTriggerType< TDev >::type
 The event host manual trigger type trait alias template to remove the ::type.
 
template<typename TQueue >
using IsBlockingQueue = trait::IsBlockingQueue< TQueue >
 The queue type that should be used for the given accelerator.
 
template<typename TView >
using Iterator = trait::IteratorView< TView >
 
using NonZeroTestDims = meta::Filter< TestDims, meta::NonZero >
 A std::tuple holding non-zero dimensions.
 
using TestAccs = meta::Apply< detail::InstantiatedEnabledAccs, meta::Concatenate >
 A std::tuple containing fully instantiated accelerators.
 
using TestDims = std::tuple< DimInt< 0u >, DimInt< 1u >, DimInt< 2u >, DimInt< 3u > >
 A std::tuple holding dimensions.
 
using TestIdxs = std::tuple< std::int64_t, std::uint64_t, std::int32_t, std::uint32_t >
 A std::tuple holding idx types.
 
using TestQueues = std::tuple< std::tuple< DevCpu, QueueCpuBlocking >, std::tuple< DevCpu, QueueCpuNonBlocking >, std::tuple< DevCudaRt, QueueCudaRtBlocking >, std::tuple< DevCudaRt, QueueCudaRtNonBlocking > >
 A std::tuple holding tuples of devices and corresponding queue types.
 

Functions

template<typename TView >
ALPAKA_FN_HOST auto begin (TView &view) -> Iterator< TView >
 
template<typename TView >
ALPAKA_FN_HOST auto end (TView &view) -> Iterator< TView >
 
template<typename TView , typename TQueue >
ALPAKA_FN_HOST auto iotaFillView (TQueue &queue, TView &view) -> void
 Fills the given view with increasing values starting at 0.
 
template<typename TDev >
ALPAKA_FN_HOST auto isEventHostManualTriggerSupported (TDev const &dev) -> bool
 
template<typename TElem , typename TDim , typename TIdx , typename TDev , typename TView >
ALPAKA_FN_HOST auto testViewImmutable (TView const &view, TDev const &dev, Vec< TDim, TIdx > const &extent, Vec< TDim, TIdx > const &offset) -> void
 
template<typename TAcc , typename TView , typename TQueue >
ALPAKA_FN_HOST auto testViewMutable (TQueue &queue, TView &view) -> void
 
template<typename TAcc , typename TView >
ALPAKA_FN_HOST auto verifyBytesSet (TView const &view, std::uint8_t const &byte) -> void
 
template<typename TAcc , typename TViewB , typename TViewA >
ALPAKA_FN_HOST auto verifyViewsEqual (TViewA const &viewA, TViewB const &viewB) -> void
 
template<typename TDim , typename TIdx >
ALPAKA_FN_HOST auto writeEnabledAccs (std::ostream &os) -> void
 Writes the enabled accelerators to the given stream.
 

Variables

template<typename TDim , typename TVal >
constexpr auto extentBuf
 
template<typename TDim , typename TVal >
constexpr auto extentSubView
 
template<typename TDim , typename TVal >
constexpr auto offset
 

Detailed Description

The test specifics.

Typedef Documentation

◆ DefaultQueue

template<typename TDev >
using alpaka::test::DefaultQueue = typedef typename trait::DefaultQueueType<TDev>::type

The queue type that should be used for the given device.

Definition at line 108 of file Queue.hpp.

◆ EnabledAccs

template<typename TDim , typename TIdx >
using alpaka::test::EnabledAccs = typedef typename meta::Filter<detail::EnabledAccsElseInt<TDim, TIdx>, std::is_class>

A vector containing all available accelerators.

Definition at line 120 of file TestAccs.hpp.

◆ EventHostManualTrigger

template<typename TDev >
using alpaka::test::EventHostManualTrigger = typedef typename trait::EventHostManualTriggerType<TDev>::type

The event host manual trigger type trait alias template to remove the ::type.

Definition at line 27 of file EventHostManualTrigger.hpp.

◆ IsBlockingQueue

template<typename TQueue >
using alpaka::test::IsBlockingQueue = typedef trait::IsBlockingQueue<TQueue>

The queue type that should be used for the given accelerator.

Definition at line 112 of file Queue.hpp.

◆ Iterator

template<typename TView >
using alpaka::test::Iterator = typedef trait::IteratorView<TView>

Definition at line 130 of file Iterator.hpp.

◆ NonZeroTestDims

A std::tuple holding non-zero dimensions.

NonZeroTestDims = std::tuple<Dim1, Dim2, ... DimN>

Definition at line 32 of file TestDims.hpp.

◆ TestAccs

A std::tuple containing fully instantiated accelerators.

TestAccs = tuple< Acc1<Dim1,Idx1>, ..., AccN<Dim1,Idx1>, Acc1<Dim2,Idx1>, ..., AccN<Dim2,Idx1>, ..., Acc1<DimN,IdxN>, ..., AccN<DimN,IdxN>>

Definition at line 182 of file TestAccs.hpp.

◆ TestDims

using alpaka::test::TestDims = typedef std::tuple< DimInt<0u>, DimInt<1u>, DimInt<2u>, DimInt<3u> >

A std::tuple holding dimensions.

Definition at line 17 of file TestDims.hpp.

◆ TestIdxs

using alpaka::test::TestIdxs = typedef std::tuple< std::int64_t, std::uint64_t, std::int32_t , std::uint32_t >

A std::tuple holding idx types.

Definition at line 13 of file TestIdxs.hpp.

◆ TestQueues

using alpaka::test::TestQueues = typedef std::tuple< std::tuple<DevCpu, QueueCpuBlocking>, std::tuple<DevCpu, QueueCpuNonBlocking> , std::tuple<DevCudaRt, QueueCudaRtBlocking>, std::tuple<DevCudaRt, QueueCudaRtNonBlocking> >

A std::tuple holding tuples of devices and corresponding queue types.

Definition at line 115 of file Queue.hpp.

Function Documentation

◆ begin()

template<typename TView >
ALPAKA_FN_HOST auto alpaka::test::begin ( TView &  view) -> Iterator<TView>

Definition at line 133 of file Iterator.hpp.

◆ end()

template<typename TView >
ALPAKA_FN_HOST auto alpaka::test::end ( TView &  view) -> Iterator<TView>

Definition at line 139 of file Iterator.hpp.

◆ iotaFillView()

template<typename TView , typename TQueue >
ALPAKA_FN_HOST auto alpaka::test::iotaFillView ( TQueue &  queue,
TView &  view 
) -> void

Fills the given view with increasing values starting at 0.

Definition at line 197 of file ViewTest.hpp.

◆ isEventHostManualTriggerSupported()

template<typename TDev >
ALPAKA_FN_HOST auto alpaka::test::isEventHostManualTriggerSupported ( TDev const &  dev) -> bool

Definition at line 30 of file EventHostManualTrigger.hpp.

◆ testViewImmutable()

template<typename TElem , typename TDim , typename TIdx , typename TDev , typename TView >
ALPAKA_FN_HOST auto alpaka::test::testViewImmutable ( TView const &  view,
TDev const &  dev,
Vec< TDim, TIdx > const &  extent,
Vec< TDim, TIdx > const &  offset 
) -> void

Definition at line 20 of file ViewTest.hpp.

◆ testViewMutable()

template<typename TAcc , typename TView , typename TQueue >
ALPAKA_FN_HOST auto alpaka::test::testViewMutable ( TQueue &  queue,
TView &  view 
) -> void

Definition at line 218 of file ViewTest.hpp.

◆ verifyBytesSet()

template<typename TAcc , typename TView >
ALPAKA_FN_HOST auto alpaka::test::verifyBytesSet ( TView const &  view,
std::uint8_t const &  byte 
) -> void

Definition at line 133 of file ViewTest.hpp.

◆ verifyViewsEqual()

template<typename TAcc , typename TViewB , typename TViewA >
ALPAKA_FN_HOST auto alpaka::test::verifyViewsEqual ( TViewA const &  viewA,
TViewB const &  viewB 
) -> void

Definition at line 179 of file ViewTest.hpp.

◆ writeEnabledAccs()

template<typename TDim , typename TIdx >
ALPAKA_FN_HOST auto alpaka::test::writeEnabledAccs ( std::ostream &  os) -> void

Writes the enabled accelerators to the given stream.

Definition at line 138 of file TestAccs.hpp.

Variable Documentation

◆ extentBuf

template<typename TDim , typename TVal >
constexpr auto alpaka::test::extentBuf
inlineconstexpr
Initial value:
= []
{
Vec<TDim, TVal> v;
if constexpr(TDim::value > 0)
for(TVal i = 0; i < TVal{TDim::value}; i++)
v[i] = 11 - i;
return v;
}()

Definition at line 14 of file Extent.hpp.

◆ extentSubView

template<typename TDim , typename TVal >
constexpr auto alpaka::test::extentSubView
inlineconstexpr
Initial value:
= []
{
Vec<TDim, TVal> v;
if constexpr(TDim::value > 0)
for(TVal i = 0; i < TVal{TDim::value}; i++)
v[i] = 8 - i * 2;
return v;
}()

Definition at line 24 of file Extent.hpp.

◆ offset

template<typename TDim , typename TVal >
constexpr auto alpaka::test::offset
inlineconstexpr
Initial value:
= []
{
Vec<TDim, TVal> v;
if constexpr(TDim::value > 0)
for(TVal i = 0; i < TVal{TDim::value}; i++)
v[i] = 2 + i;
return v;
}()

Definition at line 34 of file Extent.hpp.