alpaka
Abstraction Library for Parallel Kernel Acceleration
Loading...
Searching...
No Matches
alpaka::trait::detail::EmulationBase Struct Reference

#include <AtomicUniformCudaHipBuiltIn.hpp>

+ Inheritance diagram for alpaka::trait::detail::EmulationBase:

Public Types

template<typename T >
using AtomicCasType = std::conditional_t< sizeof(T)==4u, unsigned int, std::conditional_t< sizeof(T)==8u, unsigned long long int, void > >
 

Static Public Member Functions

template<typename T >
static __device__ auto reinterpretAddress (T *address) -> AtomicCasType< T > *requires(sizeof(T)==4u||sizeof(T)==8u)
 
template<typename T >
static __device__ auto reinterpretValue (T value) -> AtomicCasType< T > requires(sizeof(T)==4u||sizeof(T)==8u)
 

Detailed Description

Definition at line 34 of file AtomicUniformCudaHipBuiltIn.hpp.

Member Typedef Documentation

◆ AtomicCasType

template<typename T >
using alpaka::trait::detail::EmulationBase::AtomicCasType = std::conditional_t< sizeof(T) == 4u, unsigned int, std::conditional_t<sizeof(T) == 8u, unsigned long long int, void> >

Definition at line 37 of file AtomicUniformCudaHipBuiltIn.hpp.

Member Function Documentation

◆ reinterpretAddress()

template<typename T >
static __device__ auto alpaka::trait::detail::EmulationBase::reinterpretAddress ( T *  address) -> AtomicCasType<T>* requires(sizeof(T) == 4u || sizeof(T) == 8u)
inlinestatic

Definition at line 43 of file AtomicUniformCudaHipBuiltIn.hpp.

◆ reinterpretValue()

template<typename T >
static __device__ auto alpaka::trait::detail::EmulationBase::reinterpretValue ( value) -> AtomicCasType<T> requires(sizeof(T) == 4u || sizeof(T) == 8u)
inlinestatic

Definition at line 49 of file AtomicUniformCudaHipBuiltIn.hpp.


The documentation for this struct was generated from the following file: