4.7. Half2比较函数

要使用这些函数,请在程序中包含头文件cuda_fp16.h

Functions

__host__ __device__ bool __hbeq2(const __half2 a, const __half2 b)

执行half2向量的相等比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbequ2(const __half2 a, const __half2 b)

执行half2向量的无序等值比较,如果两个half结果均为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbge2(const __half2 a, const __half2 b)

执行half2向量大于等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbgeu2(const __half2 a, const __half2 b)

执行half2向量无序大于等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbgt2(const __half2 a, const __half2 b)

执行half2向量大于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbgtu2(const __half2 a, const __half2 b)

执行half2向量无序大于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hble2(const __half2 a, const __half2 b)

执行half2向量小于等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbleu2(const __half2 a, const __half2 b)

执行half2向量的无序小于等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hblt2(const __half2 a, const __half2 b)

执行half2向量小于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbltu2(const __half2 a, const __half2 b)

执行half2向量的无序小于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbne2(const __half2 a, const __half2 b)

执行half2向量不相等比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ bool __hbneu2(const __half2 a, const __half2 b)

执行half2向量无序不等比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

__host__ __device__ __half2 __heq2(const __half2 a, const __half2 b)

执行half2向量的相等比较。

__host__ __device__ unsigned int __heq2_mask(const __half2 a, const __half2 b)

执行half2向量的相等比较。

__host__ __device__ __half2 __hequ2(const __half2 a, const __half2 b)

执行half2向量的无序相等比较。

__host__ __device__ unsigned int __hequ2_mask(const __half2 a, const __half2 b)

执行half2向量的无序相等比较。

__host__ __device__ __half2 __hge2(const __half2 a, const __half2 b)

执行half2向量的大于等于比较。

__host__ __device__ unsigned int __hge2_mask(const __half2 a, const __half2 b)

执行half2向量的大于等于比较。

__host__ __device__ __half2 __hgeu2(const __half2 a, const __half2 b)

执行half2向量的无序大于等于比较。

__host__ __device__ unsigned int __hgeu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序大于等于比较。

__host__ __device__ __half2 __hgt2(const __half2 a, const __half2 b)

执行half2向量的大于比较。

__host__ __device__ unsigned int __hgt2_mask(const __half2 a, const __half2 b)

执行half2向量的大于比较。

__host__ __device__ __half2 __hgtu2(const __half2 a, const __half2 b)

执行half2向量的无序大于比较。

__host__ __device__ unsigned int __hgtu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序大于比较。

__host__ __device__ __half2 __hisnan2(const __half2 a)

判断half2参数是否为NaN。

__host__ __device__ __half2 __hle2(const __half2 a, const __half2 b)

执行half2向量的小于等于比较。

__host__ __device__ unsigned int __hle2_mask(const __half2 a, const __half2 b)

执行half2向量的小于等于比较。

__host__ __device__ __half2 __hleu2(const __half2 a, const __half2 b)

执行half2向量的无序小于等于比较。

__host__ __device__ unsigned int __hleu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序小于等于比较。

__host__ __device__ __half2 __hlt2(const __half2 a, const __half2 b)

执行half2向量的小于比较。

__host__ __device__ unsigned int __hlt2_mask(const __half2 a, const __half2 b)

执行half2向量的小于比较。

__host__ __device__ __half2 __hltu2(const __half2 a, const __half2 b)

执行half2向量的无序小于比较。

__host__ __device__ unsigned int __hltu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序小于比较。

__host__ __device__ __half2 __hmax2(const __half2 a, const __half2 b)

计算两个输入的half2向量最大值。

__host__ __device__ __half2 __hmax2_nan(const __half2 a, const __half2 b)

计算两个输入的half2向量最大值,NaN值直接透传。

__host__ __device__ __half2 __hmin2(const __half2 a, const __half2 b)

计算两个输入的half2向量最小值。

__host__ __device__ __half2 __hmin2_nan(const __half2 a, const __half2 b)

计算两个输入的half2向量最小值,NaN值直接传递。

__host__ __device__ __half2 __hne2(const __half2 a, const __half2 b)

执行half2向量不相等比较。

__host__ __device__ unsigned int __hne2_mask(const __half2 a, const __half2 b)

执行half2向量不相等比较。

__host__ __device__ __half2 __hneu2(const __half2 a, const __half2 b)

执行half2向量的无序不等于比较。

__host__ __device__ unsigned int __hneu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序不等于比较。

__host__ __device__ bool operator!=(const __half2 &lh, const __half2 &rh)

执行打包half无序不等于比较操作。

__host__ __device__ bool operator<(const __half2 &lh, const __half2 &rh)

执行打包的half有序小于比较操作。

__host__ __device__ bool operator<=(const __half2 &lh, const __half2 &rh)

执行打包的half有序小于等于比较操作。

__host__ __device__ bool operator==(const __half2 &lh, const __half2 &rh)

执行打包的half有序比较相等操作。

__host__ __device__ bool operator>(const __half2 &lh, const __half2 &rh)

执行打包的half有序大于比较操作。

__host__ __device__ bool operator>=(const __half2 &lh, const __half2 &rh)

执行打包的half有序大于等于比较操作。

4.7.1. 函数

__host__ __device__ bool __hbeq2(const __half2 a, const __half2 b)

执行half2向量的等值比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量的相等比较。仅当两个half相等比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的等值比较的两个half结果都为真,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hbequ2(const __half2 a, const __half2 b)

执行half2向量的无序等值比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量的相等比较。仅当两个half相等比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生真结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的无序等值比较的两个half结果都为true,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hbge2(const __half2 a, const __half2 b)

执行half2向量大于等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量大于等于比较。仅当两个half大于等于比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的大于等于比较的两个half结果都为真,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hbgeu2(const __half2 a, const __half2 b)

执行half2向量的无序大于等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量大于等于比较。仅当两个half大于等于比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生真结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的无序大于等于比较的两个half结果都为真,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hbgt2(const __half2 a, const __half2 b)

执行half2向量大于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量大于比较。仅当两个half大于比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的大于比较的两个half结果都为真,则为true;

  • 否则返回 false。

__host__ __device__ bool __hbgtu2(const __half2 a, const __half2 b)

执行half2向量的无序大于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量大于比较。仅当两个half大于比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生真结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的无序大于比较的两个half结果都为真,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hble2(const __half2 a, const __half2 b)

执行half2向量小于等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量小于等于比较。仅当两个half小于等于比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的小于等于比较的两个half结果都为true,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hbleu2(const __half2 a, const __half2 b)

执行half2向量的无序小于等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量小于等于比较。仅当两个half小于等于比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生真结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的无序小于等于比较的两个half结果都为真,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hblt2(const __half2 a, const __half2 b)

执行half2向量小于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量小于比较。仅当两个half小于比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的小于比较的两个half结果都为真,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hbltu2(const __half2 a, const __half2 b)

执行half2向量的无序小于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量小于比较。仅当两个half小于比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生真结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的无序小于比较的两个half结果都为true,则返回true;

  • 否则返回 false。

__host__ __device__ bool __hbne2(const __half2 a, const __half2 b)

执行half2向量不相等比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量不相等比较。仅当两个half不相等比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量 ab 的不等比较的两个 half 结果都为 true,则返回 true

  • 否则返回 false。

__host__ __device__ bool __hbneu2(const __half2 a, const __half2 b)

执行half2向量无序不等于比较,如果两个half结果都为真则返回布尔值true,否则返回布尔值false。

对输入ab执行half2向量不相等比较。仅当两个half不相等比较结果都为真时,布尔结果才设为真,否则为假。NaN输入会产生真结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

布尔值

  • 如果向量ab的无序不等比较的两个half结果都为true,则返回true;

  • 否则返回 false。

__host__ __device__ __half2 __heq2(const __half2 a, const __half2 b)

执行half2向量的相等比较。

对输入ab执行half2向量的相等比较。如果结果为真,对应的half结果设为1.0;如果为假则设为0.0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab进行相等比较后的向量结果。

__host__ __device__ unsigned int __heq2_mask(const __half2 a, const __half2 b)

执行half2向量的相等比较。

对输入ab执行half2向量的相等比较。若结果为真,对应的unsigned位将被设为0xFFFF;若为假,则设为0x0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行相等比较后得到的向量掩码结果。

__host__ __device__ __half2 __hequ2(const __half2 a, const __half2 b)

执行half2向量的无序相等比较。

对输入ab执行half2向量的相等比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量 ab 的无序等值比较的向量结果。

__host__ __device__ unsigned int __hequ2_mask(const __half2 a, const __half2 b)

执行half2向量的无序相等比较。

对输入ab执行half2向量的相等比较。如果结果为真,对应的unsigned位将被设置为0xFFFF;如果为假,则设置为0x0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab的无序相等比较的向量掩码结果。

__host__ __device__ __half2 __hge2(const __half2 a, const __half2 b)

执行half2向量的大于等于比较。

对输入ab执行half2向量大于等于比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量 ab 进行大于等于比较后的向量结果。

__host__ __device__ unsigned int __hge2_mask(const __half2 a, const __half2 b)

执行half2向量的大于等于比较。

对输入ab执行half2向量大于等于比较。若结果为真,对应的unsigned位将被设为0xFFFF;若为假,则设为0x0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行大于等于比较后得到的向量掩码结果。

__host__ __device__ __half2 __hgeu2(const __half2 a, const __half2 b)

执行half2向量的无序大于等于比较。

对输入ab执行half2向量大于等于比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab进行无序大于等于比较后得到的half2向量结果。

__host__ __device__ unsigned int __hgeu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序大于等于比较。

对输入ab执行half2向量大于等于比较。对应的unsigned位若为真则设为0xFFFF,若为假则设为0x0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行无序大于等于比较后得到的向量掩码结果。

__host__ __device__ __half2 __hgt2(const __half2 a, const __half2 b)

执行half2向量的大于比较。

对输入ab执行half2向量大于比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab进行大于比较运算后的向量结果。

__host__ __device__ unsigned int __hgt2_mask(const __half2 a, const __half2 b)

执行half2向量的大于比较。

对输入ab执行half2向量大于比较。对应的unsigned位在结果为真时设为0xFFFF,为假时设为0x0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行大于比较后得到的向量掩码结果。

__host__ __device__ __half2 __hgtu2(const __half2 a, const __half2 b)

执行half2向量的无序大于比较。

对输入ab执行half2向量大于比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab进行无序大于比较后得到的half2向量结果。

__host__ __device__ unsigned int __hgtu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序大于比较。

对输入ab执行half2向量大于比较。若结果为真,对应的unsigned位将被设为0xFFFF;若为假,则设为0x0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab的无序大于比较的向量掩码结果。

__host__ __device__ __half2 __hisnan2(const __half2 a)

判断half2参数是否为NaN值。

判断输入的half2数值a的每一半是否为NaN。

Parameters

a[输入] - half2类型。仅用于读取。

Returns

half2

  • 对应的half结果为NaN时half2设为1.0,否则设为0.0。

__host__ __device__ __half2 __hle2(const __half2 a, const __half2 b)

执行half2向量的小于等于比较。

对输入ab执行half2向量小于等于比较。如果比较结果为真,对应的half结果设为1.0,否则设为0.0。NaN输入会产生假的结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量 ab 进行小于等于比较后得到的 half2 结果。

__host__ __device__ unsigned int __hle2_mask(const __half2 a, const __half2 b)

执行half2向量的小于等于比较。

对输入ab执行half2向量小于等于比较。若结果为真,对应的unsigned位将被设为0xFFFF;若为假,则设为0x0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行小于等于比较后得到的向量掩码结果。

__host__ __device__ __half2 __hleu2(const __half2 a, const __half2 b)

执行half2向量的无序小于等于比较。

对输入ab执行half2向量小于等于比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab进行无序小于等于比较后的向量结果。

__host__ __device__ unsigned int __hleu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序小于等于比较。

对输入ab执行half2向量小于等于比较。若结果为真,对应的unsigned位将被设为0xFFFF;若为假,则设为0x0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行无序小于等于比较后得到的向量掩码结果。

__host__ __device__ __half2 __hlt2(const __half2 a, const __half2 b)

执行half2向量的小于比较。

对输入ab执行half2向量小于比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab进行小于比较后得到的half2向量结果。

__host__ __device__ unsigned int __hlt2_mask(const __half2 a, const __half2 b)

执行half2向量的小于比较。

对输入ab执行half2向量小于比较。若结果为真,对应的unsigned位将被设为0xFFFF;若为假,则设为0x0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行小于比较后得到的向量掩码结果。

__host__ __device__ __half2 __hltu2(const __half2 a, const __half2 b)

执行half2向量的无序小于比较。

对输入ab执行half2向量小于比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab的无序小于比较的向量结果。

__host__ __device__ unsigned int __hltu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序小于比较。

对输入ab执行half2向量小于比较。若结果为真,对应的unsigned位将被设为0xFFFF;若为假则设为0x0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab的无序小于比较的向量掩码结果。

__host__ __device__ __half2 __hmax2(const __half2 a, const __half2 b)

计算两个输入的half2向量最大值。

计算half2向量的最大值(a, b)。逐元素的half操作定义为(a > b) ? a : b

  • 如果任一输入为NaN,则返回另一个输入。

  • 如果两个输入都是NaN,则返回规范NaN。

  • 如果两个输入值均为0.0,则+0.0 > -0.0

  • 向量 ab 逐元素取最大值的结果

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

__host__ __device__ __half2 __hmax2_nan(const __half2 a, const __half2 b)

计算两个输入的half2向量最大值,NaN值直接通过。

计算half2向量的最大值(a, b)。逐元素的half操作定义为(a > b) ? a : b

  • 如果任一输入为NaN,则返回标准NaN。

  • 如果两个输入值均为0.0,则+0.0 > -0.0

  • 向量ab逐元素取最大值的结果,NaN值会直接传递

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

__host__ __device__ __half2 __hmin2(const __half2 a, const __half2 b)

计算两个输入的half2向量最小值。

计算half2向量最小值(a, b)。逐元素的half操作定义为(a < b) ? a : b

  • 如果任一输入为NaN,则返回另一个输入。

  • 如果两个输入都是NaN,则返回规范NaN。

  • 如果两个输入值均为0.0,则+0.0 > -0.0

  • 向量ab的逐元素最小值结果

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

__host__ __device__ __half2 __hmin2_nan(const __half2 a, const __half2 b)

计算两个输入的half2向量最小值,NaN值直接传递。

计算half2向量最小值(a, b)。逐元素的half操作定义为(a < b) ? a : b

  • 如果任一输入为NaN,则返回标准NaN。

  • 如果两个输入值均为0.0,则+0.0 > -0.0

  • 向量ab的逐元素最小值结果,NaN值会直接通过

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

__host__ __device__ __half2 __hne2(const __half2 a, const __half2 b)

执行half2向量不相等比较。

对输入ab执行half2向量不相等比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab进行不等比较后的向量结果。

__host__ __device__ unsigned int __hne2_mask(const __half2 a, const __half2 b)

执行half2向量不相等比较。

对输入ab执行half2向量不相等比较。如果结果为真,对应的unsigned位将被设置为0xFFFF;如果为假,则设置为0x0。NaN输入会产生假结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行不等比较后得到的向量掩码结果。

__host__ __device__ __half2 __hneu2(const __half2 a, const __half2 b)

执行half2向量的无序不等于比较。

对输入ab执行half2向量不相等比较。对应的half结果若为真则设为1.0,若为假则设为0.0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

half2

  • 向量ab进行无序不相等比较得到的向量结果。

__host__ __device__ unsigned int __hneu2_mask(const __half2 a, const __half2 b)

执行half2向量的无序不等于比较。

对输入ab执行half2向量不相等比较。若结果为真,对应的unsigned位将被设为0xFFFF;若为假,则设为0x0。NaN输入会产生真值结果。

Parameters
  • a[输入] - half2类型。仅用于读取。

  • b[输入] - half2类型。仅用于读取。

Returns

无符号整型

  • 向量ab进行无序不相等比较后得到的向量掩码结果。

__host__ __device__ bool operator!=(const __half2 &lh, const __half2 &rh)

执行打包的half无序不等于比较操作。

__host__ __device__ bool operator<(const __half2 &lh, const __half2 &rh)

执行打包的half有序小于比较操作。

__host__ __device__ bool operator<=(const __half2 &lh, const __half2 &rh)

执行打包的half有序小于等于比较操作。

__host__ __device__ bool operator==(const __half2 &lh, const __half2 &rh)

执行打包的half有序比较相等操作。

__host__ __device__ bool operator>(const __half2 &lh, const __half2 &rh)

执行打包的half有序大于比较操作。

__host__ __device__ bool operator>=(const __half2 &lh, const __half2 &rh)

执行打包的half有序大于等于比较操作。