update porting guide for updated __HIP_DEVICE_COMPILE__
Change-Id: I0f025d354f76e2d728231bf112a77e8c8fcacc8c
[ROCm/hip commit: 37ed319a20]
Bu işleme şunda yer alıyor:
@@ -166,10 +166,10 @@ Both nvcc and hcc make two passes over the code: one for host code and one for d
|
||||
|
||||
```
|
||||
// #ifdef __CUDA_ARCH__
|
||||
#if defined(__HIP_DEVICE_COMPILE__) && (__HIP_DEVICE_COMPILE__ == 1)
|
||||
#if __HIP_DEVICE_COMPILE__
|
||||
```
|
||||
|
||||
Unlike `__CUDA_ARCH__`, the `__HIP_DEVICE_COMPILE__` value is 0 or 1, and it doesnt represent the feature capability of the target device.
|
||||
Unlike `__CUDA_ARCH__`, the `__HIP_DEVICE_COMPILE__` value is 1 or undefined, and it doesnt represent the feature capability of the target device.
|
||||
|
||||
|
||||
### Compiler Defines: Summary
|
||||
@@ -178,7 +178,7 @@ Unlike `__CUDA_ARCH__`, the `__HIP_DEVICE_COMPILE__` value is 0 or 1, and it doe
|
||||
|HIP-related defines:|
|
||||
|`__HIP_PLATFORM_HCC___`| Defined | Undefined | Defined if targeting hcc platform; undefined otherwise |
|
||||
|`__HIP_PLATFORM_NVCC___`| Undefined | Defined | Defined if targeting nvcc platform; undefined otherwise |
|
||||
|`__HIP_DEVICE_COMPILE__` | 1 if compiling for device; 0 if compiling for host |1 if compiling for device; 0 if compiling for host | Undefined
|
||||
|`__HIP_DEVICE_COMPILE__` | 1 if compiling for device; undefined if compiling for host |1 if compiling for device; undefined if compiling for host | Undefined
|
||||
|`__HIPCC__` | Defined | Defined | Undefined
|
||||
|`__HIP_ARCH_*` | 0 or 1 depending on feature support (see below) | 0 or 1 depending on feature support (see below) | 0
|
||||
|nvcc-related defines:|
|
||||
|
||||
@@ -27,13 +27,6 @@ THE SOFTWARE.
|
||||
// Other compiler (GCC,ICC,etc) need to set one of these macros explicitly
|
||||
#if defined(__HCC__)
|
||||
#define __HIP_PLATFORM_HCC__
|
||||
|
||||
#if defined(__HCC_ACCELERATOR__) && (__HCC_ACCELERATOR__ != 0)
|
||||
#define __HIP_DEVICE_COMPILE__ 1
|
||||
#else
|
||||
#define __HIP_DEVICE_COMPILE__ 0
|
||||
#endif
|
||||
|
||||
#endif //__HCC__
|
||||
|
||||
// Auto enable __HIP_PLATFORM_NVCC__ if compiling with NVCC
|
||||
@@ -43,14 +36,12 @@ THE SOFTWARE.
|
||||
#define __HIPCC__
|
||||
#endif
|
||||
|
||||
#if defined(__CUDA_ARCH__) && (__CUDA_ARCH__ != 0)
|
||||
#define __HIP_DEVICE_COMPILE__ 1
|
||||
#else
|
||||
#define __HIP_DEVICE_COMPILE__ 0
|
||||
#endif
|
||||
|
||||
#endif //__NVCC__
|
||||
|
||||
// Auto enable __HIP_DEVICE_COMPILE__ if compiled in HCC or NVCC device path
|
||||
#if (defined(__HCC_ACCELERATOR__) && __HCC_ACCELERATOR__ != 0) || (defined(__CUDA_ARCH__) && __CUDA_ARCH__ != 0)
|
||||
#define __HIP_DEVICE_COMPILE__ 1
|
||||
#endif
|
||||
|
||||
#if __HIP_DEVICE_COMPILE__ == 0
|
||||
// 32-bit Atomics
|
||||
|
||||
Yeni konuda referans
Bir kullanıcı engelle