Bagikan melalui


Metode IDMLBindingTable::BindTemporaryResource (directml.h)

Mengikat buffer untuk digunakan sebagai memori goresan sementara. Anda dapat menentukan ukuran rentang buffer yang diperlukan dengan memanggil IDMLDispatchable::GetBindingProperties.

Jika properti pengikatan untuk IDMLDispatchable menentukan ukuran nol untuk sumber daya sementara, maka Anda dapat menyediakan nullptr ke metode ini (yang menunjukkan tidak ada sumber daya yang akan diikat). Jika tidak, pengikatan jenis DML_BINDING_TYPE_BUFFER harus disediakan yang setidaknya sebesar TemporaryResourceSize yang diperlukan yang dikembalikan oleh IDMLDispatchable::GetBindingProperties.

Sumber daya sementara biasanya digunakan sebagai memori awal selama eksekusi operator. Konten sumber daya sementara tidak perlu didefinisikan sebelum eksekusi. Misalnya, DirectML tidak mengharuskan Anda nol konten sumber daya sementara sebelum mengikat atau mengeksekusi operator.

Anda tidak perlu mempertahankan konten buffer sementara, dan aplikasi Anda bebas menimpa atau menggunakan kembali kontennya segera setelah eksekusi operator atau inisialisasi selesai pada GPU. Ini berbeda dengan sumber daya persisten, yang kontennya harus dipertahankan dan masa pakainya diperpanjang selama masa pakai operator.

Rentang buffer yang disediakan untuk terikat karena buffer sementara harus memiliki offset awal yang selaras dengan DML_TEMPORARY_BUFFER_ALIGNMENT. Jenis timbunan yang mendasar buffer harus D3D12_HEAP_TYPE_DEFAULT.

Sintaks

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

Parameter

[in, optional] binding

Jenis: const DML_BINDING_DESC*

Penunjuk opsional ke DML_BINDING_DESC yang berisi deskripsi sumber daya tensor untuk mengikat.

Nilai kembali

Tidak ada

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header directml.h
Pustaka DirectML.lib
DLL DirectML.dll

Lihat juga

Pengikatan di DirectML

IDMLBindingTable