1.2.4. Bfloat162 Comparison Functions
[Bfloat16 Precision Intrinsics]
To use these functions, include the header file cuda_bf16.h in your program.
Functions
- __device__ bool __hbeq2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector if-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbequ2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered if-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbge2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector greater-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbgeu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered greater-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbgt2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector greater-than comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbgtu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered greater-than comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hble2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector less-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbleu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered less-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hblt2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector less-than comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbltu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered less-than comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbne2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector not-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ bool __hbneu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered not-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
- __device__ __nv_bfloat162 __heq2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector if-equal comparison.
- __device__ __nv_bfloat162 __hequ2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered if-equal comparison.
- __device__ __nv_bfloat162 __hge2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector greater-equal comparison.
- __device__ __nv_bfloat162 __hgeu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered greater-equal comparison.
- __device__ __nv_bfloat162 __hgt2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector greater-than comparison.
- __device__ __nv_bfloat162 __hgtu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered greater-than comparison.
- __device__ __nv_bfloat162 __hisnan2 ( const __nv_bfloat162 a )
- Determine whether nv_bfloat162 argument is a NaN.
- __device__ __nv_bfloat162 __hle2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector less-equal comparison.
- __device__ __nv_bfloat162 __hleu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered less-equal comparison.
- __device__ __nv_bfloat162 __hlt2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector less-than comparison.
- __device__ __nv_bfloat162 __hltu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered less-than comparison.
- __device__ __nv_bfloat162 __hmax2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Calculates nv_bfloat162 vector maximum of two inputs.
- __device__ __nv_bfloat162 __hmax2_nan ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Calculates nv_bfloat162 vector maximum of two inputs, NaNs pass through.
- __device__ __nv_bfloat162 __hmin2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Calculates nv_bfloat162 vector minimum of two inputs.
- __device__ __nv_bfloat162 __hmin2_nan ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Calculates nv_bfloat162 vector minimum of two inputs, NaNs pass through.
- __device__ __nv_bfloat162 __hne2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector not-equal comparison.
- __device__ __nv_bfloat162 __hneu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
- Performs nv_bfloat162 vector unordered not-equal comparison.
Functions
- __device__ bool __hbeq2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector if-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of if-equal comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector if-equal comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 if-equal comparisons evaluate to true, or false otherwise. NaN inputs generate false results.
- __device__ bool __hbequ2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered if-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of unordered if-equal comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector if-equal comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 if-equal comparisons evaluate to true, or false otherwise. NaN inputs generate true results.
- __device__ bool __hbge2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector greater-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of greater-equal comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector greater-equal comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 greater-equal comparisons evaluate to true, or false otherwise. NaN inputs generate false results.
- __device__ bool __hbgeu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered greater-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of unordered greater-equal comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector greater-equal comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 greater-equal comparisons evaluate to true, or false otherwise. NaN inputs generate true results.
- __device__ bool __hbgt2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector greater-than comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of greater-than comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector greater-than comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 greater-than comparisons evaluate to true, or false otherwise. NaN inputs generate false results.
- __device__ bool __hbgtu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered greater-than comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of unordered greater-than comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector greater-than comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 greater-than comparisons evaluate to true, or false otherwise. NaN inputs generate true results.
- __device__ bool __hble2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector less-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of less-equal comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector less-equal comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 less-equal comparisons evaluate to true, or false otherwise. NaN inputs generate false results.
- __device__ bool __hbleu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered less-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of unordered less-equal comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector less-equal comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 less-equal comparisons evaluate to true, or false otherwise. NaN inputs generate true results.
- __device__ bool __hblt2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector less-than comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of less-than comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector less-than comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 less-than comparisons evaluate to true, or false otherwise. NaN inputs generate false results.
- __device__ bool __hbltu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered less-than comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of unordered less-than comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector less-than comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 less-than comparisons evaluate to true, or false otherwise. NaN inputs generate true results.
- __device__ bool __hbne2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector not-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of not-equal comparison of vectors a and b are true,
- false
otherwise.
Description
Performs nv_bfloat162 vector not-equal comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 not-equal comparisons evaluate to true, or false otherwise. NaN inputs generate false results.
- __device__ bool __hbneu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered not-equal comparison and returns boolean true iff both nv_bfloat16 results are true, boolean false otherwise.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
bool
- true
if both nv_bfloat16 results of unordered not-equal comparison of vectors a and b are true;
- false
otherwise.
Description
Performs nv_bfloat162 vector not-equal comparison of inputs a and b. The bool result is set to true only if both nv_bfloat16 not-equal comparisons evaluate to true, or false otherwise. NaN inputs generate true results.
- __device__ __nv_bfloat162 __heq2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector if-equal comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
vector result of if-equal comparison of vectors a and b.
Description
Performs nv_bfloat162 vector if-equal comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate false results.
- __device__ __nv_bfloat162 __hequ2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered if-equal comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
vector result of unordered if-equal comparison of vectors a and b.
Description
Performs nv_bfloat162 vector if-equal comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate true results.
- __device__ __nv_bfloat162 __hge2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector greater-equal comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
vector result of greater-equal comparison of vectors a and b.
Description
Performs nv_bfloat162 vector greater-equal comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate false results.
- __device__ __nv_bfloat162 __hgeu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered greater-equal comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
nv_bfloat162 vector result of unordered greater-equal comparison of vectors a and b.
Description
Performs nv_bfloat162 vector greater-equal comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate true results.
- __device__ __nv_bfloat162 __hgt2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector greater-than comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
vector result of greater-than comparison of vectors a and b.
Description
Performs nv_bfloat162 vector greater-than comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate false results.
- __device__ __nv_bfloat162 __hgtu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered greater-than comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
nv_bfloat162 vector result of unordered greater-than comparison of vectors a and b.
Description
Performs nv_bfloat162 vector greater-than comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate true results.
- __device__ __nv_bfloat162 __hisnan2 ( const __nv_bfloat162 a )
-
Determine whether nv_bfloat162 argument is a NaN.
Parameters
- a
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
nv_bfloat162 with the corresponding nv_bfloat16 results set to 1.0 for NaN, 0.0 otherwise.
Description
Determine whether each nv_bfloat16 of input nv_bfloat162 number a is a NaN.
- __device__ __nv_bfloat162 __hle2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector less-equal comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
nv_bfloat162 result of less-equal comparison of vectors a and b.
Description
Performs nv_bfloat162 vector less-equal comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate false results.
- __device__ __nv_bfloat162 __hleu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered less-equal comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
vector result of unordered less-equal comparison of vectors a and b.
Description
Performs nv_bfloat162 vector less-equal comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate true results.
- __device__ __nv_bfloat162 __hlt2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector less-than comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
nv_bfloat162 vector result of less-than comparison of vectors a and b.
Description
Performs nv_bfloat162 vector less-than comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate false results.
- __device__ __nv_bfloat162 __hltu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered less-than comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
vector result of unordered less-than comparison of vectors a and b.
Description
Performs nv_bfloat162 vector less-than comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate true results.
- __device__ __nv_bfloat162 __hmax2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Calculates nv_bfloat162 vector maximum of two inputs.
Description
Calculates nv_bfloat162 vector max(a, b). Elementwise nv_bfloat16 operation is 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_bfloat162 __hmax2_nan ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Calculates nv_bfloat162 vector maximum of two inputs, NaNs pass through.
Description
Calculates nv_bfloat162 vector max(a, b). Elementwise nv_bfloat16 operation is 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_bfloat162 __hmin2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Calculates nv_bfloat162 vector minimum of two inputs.
Description
Calculates nv_bfloat162 vector min(a, b). Elementwise nv_bfloat16 operation is 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_bfloat162 __hmin2_nan ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Calculates nv_bfloat162 vector minimum of two inputs, NaNs pass through.
Description
Calculates nv_bfloat162 vector min(a, b). Elementwise nv_bfloat16 operation is 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_bfloat162 __hne2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector not-equal comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
vector result of not-equal comparison of vectors a and b.
Description
Performs nv_bfloat162 vector not-equal comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate false results.
- __device__ __nv_bfloat162 __hneu2 ( const __nv_bfloat162 a, const __nv_bfloat162 b )
-
Performs nv_bfloat162 vector unordered not-equal comparison.
Parameters
- a
- - nv_bfloat162. Is only being read.
- b
- - nv_bfloat162. Is only being read.
Returns
nv_bfloat162
- The
vector result of unordered not-equal comparison of vectors a and b.
Description
Performs nv_bfloat162 vector not-equal comparison of inputs a and b. The corresponding nv_bfloat16 results are set to 1.0 for true, or 0.0 for false. NaN inputs generate true results.