alpaka
Abstraction Library for Parallel Kernel Acceleration
Loading...
Searching...
No Matches
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/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::InterfaceAcc
 
struct  alpaka::trait::GetAccName< TAcc >
 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 >
 

Namespaces

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

Concepts

concept  alpaka::concepts::Acc
 

Typedefs

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

Functions

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

Variables

template<typename TAcc >
constexpr bool alpaka::isAccelerator = concepts::Acc<TAcc>
 True if TAcc is an accelerator, i.e. if it implements the InterfaceAcc concept.
 
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.
 
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.