1.2.3. Bfloat16 Comparison Functions
[Bfloat16 Precision Intrinsics]
To use these functions, include the header file cuda_bf16.h in your program.
Functions
- __device__ bool __heq ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 if-equal comparison.
- __device__ bool __hequ ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 unordered if-equal comparison.
- __device__ bool __hge ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 greater-equal comparison.
- __device__ bool __hgeu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 unordered greater-equal comparison.
- __device__ bool __hgt ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 greater-than comparison.
- __device__ bool __hgtu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 unordered greater-than comparison.
- __device__ int __hisinf ( const __nv_bfloat16 a )
- Checks if the input nv_bfloat16 number is infinite.
- __device__ bool __hisnan ( const __nv_bfloat16 a )
- Determine whether nv_bfloat16 argument is a NaN.
- __device__ bool __hle ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 less-equal comparison.
- __device__ bool __hleu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 unordered less-equal comparison.
- __device__ bool __hlt ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 less-than comparison.
- __device__ bool __hltu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 unordered less-than comparison.
- __device__ __nv_bfloat16 __hmax ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Calculates nv_bfloat16 maximum of two input values.
- __device__ __nv_bfloat16 __hmax_nan ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Calculates nv_bfloat16 maximum of two input values, NaNs pass through.
- __device__ __nv_bfloat16 __hmin ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Calculates nv_bfloat16 minimum of two input values.
- __device__ __nv_bfloat16 __hmin_nan ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Calculates nv_bfloat16 minimum of two input values, NaNs pass through.
- __device__ bool __hne ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 not-equal comparison.
- __device__ bool __hneu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
- Performs nv_bfloat16 unordered not-equal comparison.
Functions
- __device__ bool __heq ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 if-equal comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of if-equal comparison of a and b.
Description
Performs nv_bfloat16 if-equal comparison of inputs a and b. NaN inputs generate false results.
- __device__ bool __hequ ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 unordered if-equal comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of unordered if-equal comparison of a and b.
Description
Performs nv_bfloat16 if-equal comparison of inputs a and b. NaN inputs generate true results.
- __device__ bool __hge ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 greater-equal comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of greater-equal comparison of a and b.
Description
Performs nv_bfloat16 greater-equal comparison of inputs a and b. NaN inputs generate false results.
- __device__ bool __hgeu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 unordered greater-equal comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of unordered greater-equal comparison of a and b.
Description
Performs nv_bfloat16 greater-equal comparison of inputs a and b. NaN inputs generate true results.
- __device__ bool __hgt ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 greater-than comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of greater-than comparison of a and b.
Description
Performs nv_bfloat16 greater-than comparison of inputs a and b. NaN inputs generate false results.
- __device__ bool __hgtu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 unordered greater-than comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of unordered greater-than comparison of a and b.
Description
Performs nv_bfloat16 greater-than comparison of inputs a and b. NaN inputs generate true results.
- __device__ int __hisinf ( const __nv_bfloat16 a )
-
Checks if the input nv_bfloat16 number is infinite.
Parameters
- a
- - nv_bfloat16. 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 nv_bfloat16 number a is infinite.
- __device__ bool __hisnan ( const __nv_bfloat16 a )
-
Determine whether nv_bfloat16 argument is a NaN.
Parameters
- a
- - nv_bfloat16. Is only being read.
Returns
bool
- true
iff argument is NaN.
Description
Determine whether nv_bfloat16 value a is a NaN.
- __device__ bool __hle ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 less-equal comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of less-equal comparison of a and b.
Description
Performs nv_bfloat16 less-equal comparison of inputs a and b. NaN inputs generate false results.
- __device__ bool __hleu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 unordered less-equal comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of unordered less-equal comparison of a and b.
Description
Performs nv_bfloat16 less-equal comparison of inputs a and b. NaN inputs generate true results.
- __device__ bool __hlt ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 less-than comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of less-than comparison of a and b.
Description
Performs nv_bfloat16 less-than comparison of inputs a and b. NaN inputs generate false results.
- __device__ bool __hltu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 unordered less-than comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of unordered less-than comparison of a and b.
Description
Performs nv_bfloat16 less-than comparison of inputs a and b. NaN inputs generate true results.
- __device__ __nv_bfloat16 __hmax ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Calculates nv_bfloat16 maximum of two input values.
Description
Calculates nv_bfloat16 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__ __nv_bfloat16 __hmax_nan ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Calculates nv_bfloat16 maximum of two input values, NaNs pass through.
Description
Calculates nv_bfloat16 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__ __nv_bfloat16 __hmin ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Calculates nv_bfloat16 minimum of two input values.
Description
Calculates nv_bfloat16 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__ __nv_bfloat16 __hmin_nan ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Calculates nv_bfloat16 minimum of two input values, NaNs pass through.
Description
Calculates nv_bfloat16 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 __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 not-equal comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of not-equal comparison of a and b.
Description
Performs nv_bfloat16 not-equal comparison of inputs a and b. NaN inputs generate false results.
- __device__ bool __hneu ( const __nv_bfloat16 a, const __nv_bfloat16 b )
-
Performs nv_bfloat16 unordered not-equal comparison.
Parameters
- a
- - nv_bfloat16. Is only being read.
- b
- - nv_bfloat16. Is only being read.
Returns
bool
- The
boolean result of unordered not-equal comparison of a and b.
Description
Performs nv_bfloat16 not-equal comparison of inputs a and b. NaN inputs generate true results.