Metodo ID3D11DeviceContext::D ispatch (d3d11.h)

Eseguire un elenco di comandi da un gruppo di thread.

Sintassi

void Dispatch(
  [in] UINT ThreadGroupCountX,
  [in] UINT ThreadGroupCountY,
  [in] UINT ThreadGroupCountZ
);

Parametri

[in] ThreadGroupCountX

Tipo: UINT

Numero di gruppi inviati nella direzione x. ThreadGroupCountX deve essere minore o uguale a D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION (65535).

[in] ThreadGroupCountY

Tipo: UINT

Numero di gruppi inviati nella direzione y. ThreadGroupCountY deve essere minore o uguale a D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION (65535).

[in] ThreadGroupCountZ

Tipo: UINT

Numero di gruppi inviati nella direzione z. ThreadGroupCountZ deve essere minore o uguale a D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION (65535). Nel livello di funzionalità 10 il valore per ThreadGroupCountZ deve essere 1.

Valore restituito

nessuno

Osservazioni

Chiamare il metodo Dispatch per eseguire i comandi in uno shader di calcolo. Un compute shader può essere eseguito in molti thread in parallelo, all'interno di un gruppo di thread. Indicizzare un thread specifico, all'interno di un gruppo di thread usando un vettore 3D specificato da (x,y,z).

Nella figura seguente si supponga che un gruppo di thread con 50 thread in cui le dimensioni del gruppo siano specificate da (5,5,2). Un singolo thread viene identificato da un gruppo di thread con 50 thread al suo interno, usando il vettore (4,1,1).

Illustrazione di un singolo thread all'interno di un gruppo di thread di 50 thread

La figura seguente illustra la relazione tra i parametri passati a ID3D11DeviceContext::D ispatch, Dispatch(5,3,2), i valori specificati nell'attributo numthreads, numthreads(10,8,3) e i valori che verranno passati allo shader di calcolo per i valori di sistema correlati al thread (SV_GroupIndex,SV_DispatchThreadID,SV_GroupThreadID,SV_GroupID).

Illustrazione della relazione tra Dispatch, gruppi di thread e thread

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione d3d11.h
Libreria D3D11.lib

Vedi anche

ID3D11DeviceContext