1.1.3. Half Comparison Functions
[Half Precision Intrinsics]
To use these functions, include the header file cuda_fp16.h in your program.
Functions
- __device__  bool __heq ( const __half a, const __half b )
 - Performs half if-equal comparison.
 - __device__  bool __hequ ( const __half a, const __half b )
 - Performs half unordered if-equal comparison.
 - __device__  bool __hge ( const __half a, const __half b )
 - Performs half greater-equal comparison.
 - __device__  bool __hgeu ( const __half a, const __half b )
 - Performs half unordered greater-equal comparison.
 - __device__  bool __hgt ( const __half a, const __half b )
 - Performs half greater-than comparison.
 - __device__  bool __hgtu ( const __half a, const __half b )
 - Performs half unordered greater-than comparison.
 - __device__  int __hisinf ( const __half a )
 - Checks if the input half number is infinite.
 - __device__  bool __hisnan ( const __half a )
 - Determine whether half argument is a NaN.
 - __device__  bool __hle ( const __half a, const __half b )
 - Performs half less-equal comparison.
 - __device__  bool __hleu ( const __half a, const __half b )
 - Performs half unordered less-equal comparison.
 - __device__  bool __hlt ( const __half a, const __half b )
 - Performs half less-than comparison.
 - __device__  bool __hltu ( const __half a, const __half b )
 - Performs half unordered less-than comparison.
 - __device__  __half __hmax ( const __half a, const __half b )
 - Calculates half maximum of two input values.
 - __device__  __half __hmax_nan ( const __half a, const __half b )
 - Calculates half maximum of two input values, NaNs pass through.
 - __device__  __half __hmin ( const __half a, const __half b )
 - Calculates half minimum of two input values.
 - __device__  __half __hmin_nan ( const __half a, const __half b )
 - Calculates half minimum of two input values, NaNs pass through.
 - __device__  bool __hne ( const __half a, const __half b )
 - Performs half not-equal comparison.
 - __device__  bool __hneu ( const __half a, const __half b )
 - Performs half unordered not-equal comparison.
 
Functions
- __device__  bool __heq ( const __half a, const __half b )
 - 
                           Performs half if-equal comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of if-equal comparison of a and b.
 
Description
Performs half if-equal comparison of inputs a and b. NaN inputs generate false results.
 - __device__  bool __hequ ( const __half a, const __half b )
 - 
                           Performs half unordered if-equal comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of unordered if-equal comparison of a and b.
 
Description
Performs half if-equal comparison of inputs a and b. NaN inputs generate true results.
 - __device__  bool __hge ( const __half a, const __half b )
 - 
                           Performs half greater-equal comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of greater-equal comparison of a and b.
 
Description
Performs half greater-equal comparison of inputs a and b. NaN inputs generate false results.
 - __device__  bool __hgeu ( const __half a, const __half b )
 - 
                           Performs half unordered greater-equal comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of unordered greater-equal comparison of a and b.
 
Description
Performs half greater-equal comparison of inputs a and b. NaN inputs generate true results.
 - __device__  bool __hgt ( const __half a, const __half b )
 - 
                           Performs half greater-than comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of greater-than comparison of a and b.
 
Description
Performs half greater-than comparison of inputs a and b. NaN inputs generate false results.
 - __device__  bool __hgtu ( const __half a, const __half b )
 - 
                           Performs half unordered greater-than comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of unordered greater-than comparison of a and b.
 
Description
Performs half greater-than comparison of inputs a and b. NaN inputs generate true results.
 - __device__  int __hisinf ( const __half a )
 - 
                           Checks if the input half number is infinite.
Parameters
- a
 - - half. Is only being read.
 
Returns
int
- -1 
                                       
iff a is equal to negative infinity,
 - 1 
                                       
iff a is equal to positive infinity,
 - 0 
                                       
otherwise.
 
Description
Checks if the input half number a is infinite.
 - __device__  bool __hisnan ( const __half a )
 - 
                           Determine whether half argument is a NaN.
Parameters
- a
 - - half. Is only being read.
 
Returns
bool
- true 
                                       
iff argument is NaN.
 
Description
Determine whether half value a is a NaN.
 - __device__  bool __hle ( const __half a, const __half b )
 - 
                           Performs half less-equal comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of less-equal comparison of a and b.
 
Description
Performs half less-equal comparison of inputs a and b. NaN inputs generate false results.
 - __device__  bool __hleu ( const __half a, const __half b )
 - 
                           Performs half unordered less-equal comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of unordered less-equal comparison of a and b.
 
Description
Performs half less-equal comparison of inputs a and b. NaN inputs generate true results.
 - __device__  bool __hlt ( const __half a, const __half b )
 - 
                           Performs half less-than comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of less-than comparison of a and b.
 
Description
Performs half less-than comparison of inputs a and b. NaN inputs generate false results.
 - __device__  bool __hltu ( const __half a, const __half b )
 - 
                           Performs half unordered less-than comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of unordered less-than comparison of a and b.
 
Description
Performs half less-than comparison of inputs a and b. NaN inputs generate true results.
 - __device__  __half __hmax ( const __half a, const __half b )
 - 
                           Calculates half maximum of two input values.
Description
Calculates half max(a, b) defined as (a > b) ? a : b.
- 
                                       
If either of inputs is NaN, the other input is returned.
 - 
                                       
If both inputs are NaNs, then canonical NaN is returned.
 - 
                                       
If values of both inputs are 0.0, then +0.0 > -0.0
 
 - 
                                       
 - __device__  __half __hmax_nan ( const __half a, const __half b )
 - 
                           Calculates half maximum of two input values, NaNs pass through.
Description
Calculates half max(a, b) defined as (a > b) ? a : b.
- 
                                       
If either of inputs is NaN, then canonical NaN is returned.
 - 
                                       
If values of both inputs are 0.0, then +0.0 > -0.0
 
 - 
                                       
 - __device__  __half __hmin ( const __half a, const __half b )
 - 
                           Calculates half minimum of two input values.
Description
Calculates half min(a, b) defined as (a < b) ? a : b.
- 
                                       
If either of inputs is NaN, the other input is returned.
 - 
                                       
If both inputs are NaNs, then canonical NaN is returned.
 - 
                                       
If values of both inputs are 0.0, then +0.0 > -0.0
 
 - 
                                       
 - __device__  __half __hmin_nan ( const __half a, const __half b )
 - 
                           Calculates half minimum of two input values, NaNs pass through.
Description
Calculates half min(a, b) defined as (a < b) ? a : b.
- 
                                       
If either of inputs is NaN, then canonical NaN is returned.
 - 
                                       
If values of both inputs are 0.0, then +0.0 > -0.0
 
 - 
                                       
 - __device__  bool __hne ( const __half a, const __half b )
 - 
                           Performs half not-equal comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of not-equal comparison of a and b.
 
Description
Performs half not-equal comparison of inputs a and b. NaN inputs generate false results.
 - __device__  bool __hneu ( const __half a, const __half b )
 - 
                           Performs half unordered not-equal comparison.
Parameters
- a
 - - half. Is only being read.
 - b
 - - half. Is only being read.
 
Returns
bool
- The 
                                       
boolean result of unordered not-equal comparison of a and b.
 
Description
Performs half not-equal comparison of inputs a and b. NaN inputs generate true results.