IDMLBindingTable::BindOutputs 方法 (directml.h)

将一组资源绑定为输出张量。

如果绑定已编译的运算符,则绑定数必须与运算符(包括可选张量)的输入数完全匹配。 这可以从用于创建运算符的运算符说明中确定。 如果提供的绑定太多或太少,将删除设备。 对于可选张量,可以使用 DML_BINDING_TYPE_NONE 指定“无绑定”。 否则,绑定类型必须与创建运算符时的张量类型匹配。

对于运算符初始值设定项,输出绑定是每个运算符的持久性资源,按照创建或重置初始值设定项时为运算符提供的顺序提供。 如果特定运算符不需要永久性资源,则应证明该槽中的空绑定。

若要取消绑定所有输入资源,请为绑定提供 rangeCount 0 和 nullptr 值。

两个输出张量的可写区域不得相互重叠。 要绑定的输出缓冲区的“可写区域”定义为缓冲区范围的起始偏移量,最大到张量说明中指定的 TotalTensorSizeInBytes

所有作为输出绑定的缓冲区都必须具有堆 类型D3D12_HEAP_TYPE_DEFAULT

语法

void BindOutputs(
                 UINT                   bindingCount,
  [in, optional] const DML_BINDING_DESC *bindings
);

参数

bindingCount

类型: UINT

如果) 提供,此参数确定 绑定数组 ( 的大小。

[in, optional] bindings

类型: const DML_BINDING_DESC*

指向 DML_BINDING_DESC 常量数组的可选指针,其中包含要绑定的张量资源的说明。

返回值

要求

要求
目标平台 Windows
标头 directml.h
Library DirectML.lib
DLL DirectML.dll

另请参阅

DirectML 中的绑定

IDMLBindingTable