/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck/utility/generic_memory_space_atomic.hpp File Reference

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck/utility/generic_memory_space_atomic.hpp File Reference#

Composable Kernel: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck/utility/generic_memory_space_atomic.hpp File Reference
generic_memory_space_atomic.hpp File Reference
#include "data_type.hpp"
#include "dtype_fp64.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__ unsigned short ck::atomic_add< unsigned short > (unsigned short *p_dst, const unsigned short &x)
 
template<>
__device__ _Float16 ck::atomic_add< _Float16 > (_Float16 *p_dst, const _Float16 &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)