DML_ELEMENT_WISE_MODULUS_TRUNCATE_OPERATOR_DESC 结构 (directml.h)

计算输入张量的每个对应元素对的 C 模数运算符,并将结果放入 OutputTensor 的相应元素中。

由于商被舍入为 0,因此结果将具有与分红相同的符号。

f(a, b) = a - (b * trunc(a / b))

此运算符支持就地执行,这意味着 允许 OutputTensor 在绑定期间将其中一个输入张量别名。

语法

struct DML_ELEMENT_WISE_MODULUS_TRUNCATE_OPERATOR_DESC {
  const DML_TENSOR_DESC *ATensor;
  const DML_TENSOR_DESC *BTensor;
  const DML_TENSOR_DESC *OutputTensor;
};

成员

ATensor

类型: const DML_TENSOR_DESC*

包含左侧输入的张量。

BTensor

类型: const DML_TENSOR_DESC*

包含右侧输入的张量。

OutputTensor

类型: const DML_TENSOR_DESC*

要向其写入结果的输出张量。

可用性

此运算符是在 中引入的 DML_FEATURE_LEVEL_2_1

张量约束

ATensorBTensorOutputTensor 必须具有相同的 DataTypeDimensionCountSize

Tensor 支持

DML_FEATURE_LEVEL_6_0及更高版本

种类 支持的维度计数 支持的数据类型
ATensor 输入 1 到 8 FLOAT32、FLOAT16、INT64、INT32、INT16、INT8、UINT64、UINT32、UINT16、UINT8
BTensor 输入 1 到 8 FLOAT32、FLOAT16、INT64、INT32、INT16、INT8、UINT64、UINT32、UINT16、UINT8
OutputTensor 输出 1 到 8 FLOAT32、FLOAT16、INT64、INT32、INT16、INT8、UINT64、UINT32、UINT16、UINT8

DML_FEATURE_LEVEL_3_0及更高版本

种类 支持的维度计数 支持的数据类型
ATensor 输入 1 到 8 FLOAT32、FLOAT16、INT32、INT16、INT8、UINT32、UINT16、UINT8
BTensor 输入 1 到 8 FLOAT32、FLOAT16、INT32、INT16、INT8、UINT32、UINT16、UINT8
OutputTensor 输出 1 到 8 FLOAT32、FLOAT16、INT32、INT16、INT8、UINT32、UINT16、UINT8

DML_FEATURE_LEVEL_2_1及更高版本

种类 支持的维度计数 支持的数据类型
ATensor 输入 4 FLOAT32、FLOAT16、INT32、INT16、INT8、UINT32、UINT16、UINT8
BTensor 输入 4 FLOAT32、FLOAT16、INT32、INT16、INT8、UINT32、UINT16、UINT8
OutputTensor 输出 4 FLOAT32、FLOAT16、INT32、INT16、INT8、UINT32、UINT16、UINT8

要求

要求
最低受支持的客户端 Windows 10内部版本 20348
最低受支持的服务器 Windows 10内部版本 20348
标头 directml.h