CUDA Math API (PDF) - v11.0.207 (older) - Last updated June 29, 2020 - Send Feedback

## 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

  - trueif

    both `nv_bfloat16` results of if-equal comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of unordered if-equal comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of greater-equal comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of unordered greater-equal comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of greater-than comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of unordered greater-than comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of less-equal comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of unordered less-equal comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of less-than comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    both `nv_bfloat16` results of unordered less-than comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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

  - trueif

    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

  - trueif

    both `nv_bfloat16` results of unordered not-equal comparison of vectors `a` and `b` are true;

  - falseotherwise.

  ###### 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 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.