alpaka
Abstraction Library for Parallel Kernel Acceleration
CudaHipCommon.hpp File Reference
#include "alpaka/elem/Traits.hpp"
#include "alpaka/extent/Traits.hpp"
#include "alpaka/idx/Traits.hpp"
#include "alpaka/meta/Concatenate.hpp"
#include "alpaka/meta/TypeListOps.hpp"
#include "alpaka/offset/Traits.hpp"
#include "alpaka/vec/Vec.hpp"
#include <tuple>
#include <cuda.h>
#include <cuda_runtime.h>

Go to the source code of this file.

Classes

struct  alpaka::trait::DimType< T, std::enable_if_t< meta::Contains< alpaka::detail::CudaHipBuiltinTypes1, T >::value > >
 The CUDA/HIP vectors 1D dimension get trait specialization. More...
 
struct  alpaka::trait::DimType< T, std::enable_if_t< meta::Contains< alpaka::detail::CudaHipBuiltinTypes2, T >::value > >
 The CUDA/HIP vectors 2D dimension get trait specialization. More...
 
struct  alpaka::trait::DimType< T, std::enable_if_t< meta::Contains< alpaka::detail::CudaHipBuiltinTypes3, T >::value > >
 The CUDA/HIP vectors 3D dimension get trait specialization. More...
 
struct  alpaka::trait::DimType< T, std::enable_if_t< meta::Contains< alpaka::detail::CudaHipBuiltinTypes4, T >::value > >
 The CUDA/HIP vectors 4D dimension get trait specialization. More...
 
struct  alpaka::trait::ElemType< T, std::enable_if_t< alpaka::detail::isCudaHipBuiltInType< T > > >
 The CUDA/HIP vectors elem type trait specialization. More...
 
struct  alpaka::trait::GetExtents< TCudaHipBuiltin, std::enable_if_t< alpaka::detail::isCudaHipBuiltInType< TCudaHipBuiltin > > >
 
struct  alpaka::trait::GetOffsets< TCudaHipBuiltin, std::enable_if_t< alpaka::detail::isCudaHipBuiltInType< TCudaHipBuiltin > > >
 
struct  alpaka::trait::IdxType< TIdx, std::enable_if_t< alpaka::detail::isCudaHipBuiltInType< TIdx > > >
 The CUDA/HIP vectors idx type trait specialization. More...
 

Namespaces

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

Typedefs

using alpaka::detail::CudaHipBuiltinTypes = meta::Concatenate< CudaHipBuiltinTypes1, CudaHipBuiltinTypes2, CudaHipBuiltinTypes3, CudaHipBuiltinTypes4 >
 
using alpaka::detail::CudaHipBuiltinTypes1 = std::tuple< char1, double1, float1, int1, long1, longlong1, short1, uchar1, uint1, ulong1, ulonglong1, ushort1 >
 
using alpaka::detail::CudaHipBuiltinTypes2 = std::tuple< char2, double2, float2, int2, long2, longlong2, short2, uchar2, uint2, ulong2, ulonglong2, ushort2 >
 
using alpaka::detail::CudaHipBuiltinTypes3 = std::tuple< char3, dim3, double3, float3, int3, long3, longlong3, short3, uchar3, uint3, ulong3, ulonglong3, ushort3 >
 
using alpaka::detail::CudaHipBuiltinTypes4 = std::tuple< char4, double4, float4, int4, long4, longlong4, short4, uchar4, uint4, ulong4, ulonglong4, ushort4 >
 

Variables

template<typename T >
constexpr auto alpaka::cuda::trait::isCudaBuiltInType = alpaka::detail::isCudaHipBuiltInType<T>
 
template<typename T >
constexpr auto alpaka::detail::isCudaHipBuiltInType = meta::Contains<CudaHipBuiltinTypes, T>::value