| 279 | #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ < 530 |
| 280 | template<> |
| 281 | __device__ void boxMullerTransform<common::half, __half>( |
| 282 | common::half *const out1, common::half *const out2, const __half &r1, |
| 283 | const __half &r2) { |
| 284 | float o1, o2; |
| 285 | float fr1 = __half2float(r1); |
| 286 | float fr2 = __half2float(r2); |
| 287 | boxMullerTransform(&o1, &o2, fr1, fr2); |
| 288 | *out1 = o1; |
| 289 | *out2 = o2; |
| 290 | } |
| 291 | #endif |
| 292 | |
| 293 | // Writes without boundary checking |
nothing calls this directly
no test coverage detected