Commit 88b7f56b authored by rusty1s's avatar rusty1s
Browse files

typos

parent 6372815e
...@@ -58,29 +58,32 @@ struct AtomicMaxIntegerImpl<T, 4> { ...@@ -58,29 +58,32 @@ struct AtomicMaxIntegerImpl<T, 4> {
template<typename T> template<typename T>
struct AtomicMaxIntegerImpl<T, 8> { struct AtomicMaxIntegerImpl<T, 8> {
inline __device__ void operator()(T *address, T val) { inline __device__ void operator()(T *address, T val) {
unsigned long long * address_as_ui = (unsigned long long *) (address); int *address_as_ull = (int*) (address);
unsigned long long old = *address_as_ui; int newval = *address_as_ull;
unsigned long long newval; atomicMax(address_as_ull, newval);
unsigned long long assumed; /* unsigned long long newval; */
/* unsigned long long assumed; */
do {
assumed = old; /* do { */
newval = val + (T)old; /* assumed = old; */
old = atomicCAS(address_as_ui, assumed, newval); /* newval = val + (T)old; */
} while (assumed != old); /* old = atomicCAS(address_as_ui, assumed, newval); */
/* } while (assumed != old); */
} }
}; };
static inline __device__ void atomicMax(uint8_t *address, uint8_t val) {} static inline __device__ void atomicMax(uint8_t *address, uint8_t val) {}
static inline __device__ void atomicMax(int8_t *address, int8_t val) {} static inline __device__ void atomicMax(int8_t *address, int8_t val) {}
static inline __device__ void atomicMax(int16_t *address, int16_t val) {} static inline __device__ void atomicMax(int16_t *address, int16_t val) {}
static inline __device__ void atomicMax(int64_t *address, int64_t val) {} static inline __device__ void atomicMax(int64_t *address, int64_t val) {
AtomicMaxIntegerImpl<int64_t, sizeof(int64_t)>()(address, val);
}
#ifdef CUDA_HALF_TENSOR #ifdef CUDA_HALF_TENSOR
static inline __device__ void atomicMax(half *address, half val) {} static inline __device__ void atomicMax(half *address, half val) {}
#endif #endif
static inline __device__ void atomicMax(float *address, float val) { static inline __device__ void atomicMax(float *address, float val) {
...@@ -94,7 +97,7 @@ static inline __device__ void atomicMax(float *address, float val) { ...@@ -94,7 +97,7 @@ static inline __device__ void atomicMax(float *address, float val) {
} while (assumed != old); } while (assumed != old);
} }
static inline __device__ void atomicMax(double *address, double val) { static inline __device__ void atomicMax(double *address, double val) {
unsigned long long int *address_as_ull = (unsigned long long int *) address; unsigned long long int *address_as_ull = (unsigned long long int *) address;
unsigned long long int old = *address_as_ull; unsigned long long int old = *address_as_ull;
unsigned long long int assumed; unsigned long long int assumed;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment