共用方式為


IDMLBindingTable::BindTemporaryResource 方法 (directml.h)

系結緩衝區,以作為暫存記憶體使用。 您可以呼叫 IDMLDispatchable::GetBindingProperties 來判斷此緩衝區範圍的必要大小。

如果 IDMLDispatchable 的系結屬性指定暫存資源的大小為零,則您可以將 nullptr 提供給這個方法 (表示沒有資源系結) 。 否則,必須提供類型為 DML_BINDING_TYPE_BUFFER 的系結,其大小必須至少與IDMLDispatchable::GetBindingProperties 所傳回的必要 TemporaryResourceSize 相同。

暫存資源通常會在運算符執行期間當做臨時記憶體使用。 在執行之前,不需要定義暫存資源的內容。 例如,DirectML 不需要您在系結或執行運算符之前,先將暫存資源的內容零。

您不需要保留暫存緩衝區的內容,而且應用程式可以在 GPU 上執行運算子或初始化表達式時立即覆寫或重複使用其內容。 這與持續性資源相反,其內容必須保留,並延長操作員存留期的存留期。

要系結為暫存緩衝區的提供的緩衝區範圍,其開始位移必須對齊 DML_TEMPORARY_BUFFER_ALIGNMENT。 緩衝區基礎的堆積類型必須 D3D12_HEAP_TYPE_DEFAULT

語法

void BindTemporaryResource(
  [in, optional] const DML_BINDING_DESC *binding
);

參數

[in, optional] binding

類型: const DML_BINDING_DESC*

DML_BINDING_DESC選擇性指標 其中包含要系結之張量資源的描述。

傳回值

規格需求

需求
目標平台 Windows
標頭 directml.h
程式庫 DirectML.lib
Dll DirectML.dll

另請參閱

在 DirectML 中繫結

IDMLBindingTable