QUDA
1.0.0
|
Go to the source code of this file.
Classes | |
union | uint32_short2 |
union | uint32_char2 |
Functions | |
static __device__ double2 | atomicAdd (double2 *addr, double2 val) |
Implementation of double2 atomic addition using two double-precision additions. More... | |
static __device__ float2 | atomicAdd (float2 *addr, float2 val) |
Implementation of float2 atomic addition using two single-precision additions. More... | |
static __device__ int2 | atomicAdd (int2 *addr, int2 val) |
Implementation of int2 atomic addition using two int additions. More... | |
static __device__ short2 | atomicAdd (short2 *addr, short2 val) |
Implementation of short2 atomic addition using compare and swap. More... | |
static __device__ char2 | atomicAdd (char2 *addr, char2 val) |
Implementation of char2 atomic addition using compare and swap. More... | |
static __device__ float | atomicMax (float *addr, float val) |
Implementation of single-precision atomic max using compare and swap. May not support NaNs properly... More... | |
Provides definitions of atomic functions that are not native to CUDA. These are intentionally not declared in the namespace to avoid confusion when resolving the native atomicAdd functions.
Definition in file atomic.cuh.
|
inlinestatic |
Implementation of double2 atomic addition using two double-precision additions.
addr | Address that stores the atomic variable to be updated |
val | Value to be added to the atomic |
Definition at line 51 of file atomic.cuh.
Referenced by quda::gauge::Accessor< Float, nColor, QUDA_QDP_GAUGE_ORDER, storeFloat, use_tex >::atomic_add(), quda::gauge::Accessor< Float, nColor, QUDA_MILC_GAUGE_ORDER, storeFloat, use_tex >::atomic_add(), quda::gauge::Accessor< Float, nColor, QUDA_FLOAT2_GAUGE_ORDER, storeFloat, use_tex >::atomic_add(), atomicAdd(), quda::computeVUV(), quda::GaugeFixHit_AtomicAdd(), quda::isUnitary(), and quda::ProjectSU3kernel().
|
inlinestatic |
Implementation of float2 atomic addition using two single-precision additions.
addr | Address that stores the atomic variable to be updated |
val | Value to be added to the atomic |
Definition at line 72 of file atomic.cuh.
References atomicAdd().
|
inlinestatic |
Implementation of int2 atomic addition using two int additions.
addr | Address that stores the atomic variable to be updated |
val | Value to be added to the atomic |
Definition at line 86 of file atomic.cuh.
References atomicAdd().
|
inlinestatic |
Implementation of short2 atomic addition using compare and swap.
addr | Address that stores the atomic variable to be updated |
val | Value to be added to the atomic |
Definition at line 102 of file atomic.cuh.
References uint32_short2::i, and uint32_short2::s.
|
inlinestatic |
Implementation of char2 atomic addition using compare and swap.
addr | Address that stores the atomic variable to be updated |
val | Value to be added to the atomic |
Definition at line 123 of file atomic.cuh.
References uint32_char2::i, and uint32_char2::s.
|
inlinestatic |
Implementation of single-precision atomic max using compare and swap. May not support NaNs properly...
addr | Address that stores the atomic variable to be updated |
val | Value to be added to the atomic |
Definition at line 142 of file atomic.cuh.
Referenced by quda::CalculateYhatGPU().