alpaka
Abstraction Library for Parallel Kernel Acceleration
Traits.hpp File Reference
#include "alpaka/acc/AccDevProps.hpp"
#include "alpaka/core/Common.hpp"
#include "alpaka/core/DemangleTypeNames.hpp"
#include "alpaka/core/Interface.hpp"
#include "alpaka/dev/Traits.hpp"
#include "alpaka/dim/Traits.hpp"
#include "alpaka/idx/Traits.hpp"
#include "alpaka/kernel/Traits.hpp"
#include "alpaka/platform/Traits.hpp"
#include "alpaka/queue/Traits.hpp"
#include <string>
#include <type_traits>
#include <typeinfo>

Go to the source code of this file.

Classes

struct  alpaka::ConceptAcc
 
struct  alpaka::trait::GetAccName< TAcc, TSfinae >
 The accelerator name trait. More...
 
struct  alpaka::trait::IsMultiThreadAcc< TAcc, TSfinae >
 The multi thread accelerator trait. More...
 
struct  alpaka::trait::IsSingleThreadAcc< TAcc, TSfinae >
 The single thread accelerator trait. More...
 
struct  alpaka::trait::QueueType< TAcc, TProperty, std::enable_if_t< interface::ImplementsInterface< ConceptAcc, TAcc >::value > >
 

Namespaces

 alpaka
 The alpaka accelerator library.
 
 alpaka::trait
 The accelerator traits.
 

Typedefs

template<typename T >
using alpaka::Acc = typename trait::AccType< T >::type
 The accelerator type trait alias template to remove the ::type. More...
 

Functions

template<typename TAcc , typename TDev >
ALPAKA_FN_HOST auto alpaka::getAccDevProps (TDev const &dev) -> AccDevProps< Dim< TAcc >, Idx< TAcc >>
 
template<typename TAcc >
ALPAKA_FN_HOST auto alpaka::getAccName () -> std::string
 

Variables

template<typename TAcc >
constexpr bool alpaka::isAccelerator = interface::ImplementsInterface<ConceptAcc, TAcc>::value
 True if TAcc is an accelerator, i.e. if it implements the ConceptAcc concept. More...
 
template<typename TAcc >
constexpr bool alpaka::isMultiThreadAcc = trait::IsMultiThreadAcc<TAcc>::value
 True if TAcc is an accelerator that supports multiple threads per block, false otherwise. More...
 
template<typename TAcc >
constexpr bool alpaka::isSingleThreadAcc = trait::IsSingleThreadAcc<TAcc>::value
 True if TAcc is an accelerator that supports only a single thread per block, false otherwise. More...