Metodo IDMLBindingTable::BindPersistentResource (directml.h)

Associa un buffer come risorsa persistente. È possibile determinare le dimensioni necessarie di questo intervallo di buffer chiamando IDMLDispatchable::GetBindingProperties.

Se le proprietà di associazione per l'operatore specificano una dimensione pari a zero per la risorsa persistente, è possibile fornire nullptr a questo metodo (che indica che non è disponibile alcuna risorsa da associare). In caso contrario, è necessario specificare un'associazione di tipo DML_BINDING_TYPE_BUFFER che sia almeno di grandi dimensioni, come richiesto PersistentResourceSize restituito da IDMLDispatchable::GetBindingProperties.

A differenza della risorsa temporanea, il contenuto e la durata della risorsa persistente devono essere persistenti finché l'operatore compilato esegue. Vale a dire, se un operatore richiede una risorsa persistente, l'applicazione deve specificarla durante l'inizializzazione e successivamente specificarla a tutte le operazioni future dell'operatore senza modificarne il contenuto.

La risorsa persistente viene in genere usata da DirectML per archiviare tabelle di ricerca o altri dati di lunga durata calcolati durante l'inizializzazione di un operatore e riutilizzati nelle esecuzioni future di tale operatore.

Poiché i dati della risorsa persistente sono opachi, una volta inizializzati non è possibile copiarlo o spostarlo in un altro buffer.

La risorsa persistente viene scritta solo durante l'inizializzazione di un operatore ed è successivamente immutabile; tutte le esecuzioni successive non devono essere scritte nella risorsa persistente.

L'intervallo di buffer fornito da associare come buffer persistente deve avere l'offset iniziale allineato a DML_PERSISTENT_BUFFER_ALIGNMENT. Il tipo dell'heap sottostante il buffer deve essere D3D12_HEAP_TYPE_DEFAULT.

Sintassi

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

Parametri

[in, optional] binding

Tipo: const DML_BINDING_DESC*

Puntatore facoltativo a un DML_BINDING_DESC contenente la descrizione di una risorsa tensore da associare.

Valore restituito

nessuno

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione directml.h
Libreria DirectML.lib
DLL DirectML.dll

Vedi anche

Binding in DirectML

IDMLBindingTable