include/ck/utility/generic_memory_space_atomic.hpp File Reference

include/ck/utility/generic_memory_space_atomic.hpp File Reference#

Composable Kernel: include/ck/utility/generic_memory_space_atomic.hpp File Reference
generic_memory_space_atomic.hpp File Reference
#include "data_type.hpp"

Go to the source code of this file.

Namespaces

 ck
 

Functions

template<typename X >
__device__ X ck::atomic_add (X *p_dst, const X &x)
 
template<>
__device__ int32_t ck::atomic_add< int32_t > (int32_t *p_dst, const int32_t &x)
 
template<>
__device__ uint32_t ck::atomic_add< uint32_t > (uint32_t *p_dst, const uint32_t &x)
 
template<>
__device__ float ck::atomic_add< float > (float *p_dst, const float &x)
 
template<>
__device__ double ck::atomic_add< double > (double *p_dst, const double &x)
 
template<>
__device__ float2_t ck::atomic_add< float2_t > (float2_t *p_dst, const float2_t &x)
 
template<>
__device__ double2_t ck::atomic_add< double2_t > (double2_t *p_dst, const double2_t &x)
 
template<typename X >
__device__ X ck::atomic_max (X *p_dst, const X &x)
 
template<>
__device__ int32_t ck::atomic_max< int32_t > (int32_t *p_dst, const int32_t &x)
 
template<>
__device__ uint32_t ck::atomic_max< uint32_t > (uint32_t *p_dst, const uint32_t &x)
 
template<>
__device__ float ck::atomic_max< float > (float *p_dst, const float &x)
 
template<>
__device__ double ck::atomic_max< double > (double *p_dst, const double &x)
 
template<>
__device__ float2_t ck::atomic_max< float2_t > (float2_t *p_dst, const float2_t &x)