Skip to content

Commit 56020cb

Browse files
committed
.
1 parent f812be9 commit 56020cb

File tree

1 file changed

+6
-16
lines changed

1 file changed

+6
-16
lines changed

caffe2/utils/conversions.h

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#include <caffe2/core/hip/common_hip.h>
1212
#endif
1313

14-
#if defined(__CUDA_ARCH__) || defined(__HIP_DEVICE_COMPILE__)
14+
#if __CUDA_ARCH__ || __HIP_DEVICE_COMPILE__
1515
#define CONVERSIONS_DECL __host__ __device__ inline
1616
#else
1717
#define CONVERSIONS_DECL inline
@@ -175,38 +175,28 @@ CONVERSIONS_DECL OUT To(const IN in) {
175175
// explicit for fp16
176176
template <>
177177
CONVERSIONS_DECL float16 To(const float in) {
178-
#if __CUDA_ARCH__
178+
#if __CUDA_ARCH__ && CUDA_VERSION >= 9000
179179
// hacky interface between C2 fp16 and CUDA
180-
#if CUDA_VERSION >= 9000
181180
half rh = __float2half(in);
182181
return halfToFloat16(rh);
183-
#else
182+
#elif __CUDA_ARCH__ || __HIP_DEVICE_COMPILE__
184183
float16 ret;
185184
ret.x = __float2half(in).x;
186185
return ret;
187-
#endif // CUDA_VERSION >= 9000
188-
#elif __HIP_DEVICE_COMPILE__
189-
float16 ret;
190-
ret.x = __float2half(in);
191-
return ret;
192186
#else
193187
return cpu_float2half_rn(in);
194188
#endif
195189
}
196190

197191
template <>
198192
CONVERSIONS_DECL float To(const float16 in) {
199-
#if __CUDA_ARCH__
200-
#if CUDA_VERSION >= 9000
193+
#if __CUDA_ARCH__ && CUDA_VERSION >= 9000
201194
__half_raw tmp;
202-
#else
203-
__half tmp;
204-
#endif
205195
tmp.x = in.x;
206196
return __half2float(tmp);
207-
#elif __HIP_DEVICE_COMPILE__
197+
#elif __CUDA_ARCH__ || __HIP_DEVICE_COMPILE__
208198
__half tmp;
209-
tmp = in.x;
199+
tmp.x = in.x;
210200
return __half2float(tmp);
211201
#else
212202
return cpu_half2float(in);

0 commit comments

Comments
 (0)