SV_GroupIndex

O índice "mesclado" de um thread de sombreador de computação dentro de um grupo de threads, que transforma o SV_GroupThreadID multidimensional em um valor 1D. SV_GroupIndex varia de 0 para (numthreadsX * numthreadsY * numThreadsZ) – 1.

Tipo

Tipo
uint

 

Comentários

SV_GroupIndex = SV_GroupThreadID.z*dimx*dimy + 
                      SV_GroupThreadID.y*dimx + 
                      SV_GroupThreadID.x

em que dimx e dimy são as dimensões especificadas no atributo numthreads para o ponto de entrada.

Esse valor do sistema é opcional. No entanto, seu uso garante que um thread grave apenas em sua região de memória atribuída na variável groupshared.

A ilustração a seguir mostra a relação entre os parâmetros passados para ID3D11DeviceContext::D ispatch, Dispatch(5,3,2), os valores especificados no atributo numthreads, numthreads(10,8,3) e valores que serão passados para o sombreador de computação para os valores do sistema relacionados ao thread (SV_GroupIndex,SV_DispatchThreadID,SV_GroupThreadID,SV_GroupID).

ilustração da relação entre expedição, grupos de threads e threads

Essa função tem suporte nos seguintes tipos de sombreadores:

Vértice Casco Domínio Geometry Pixel Computação
x

 

Confira também

Semântica

Modelo de sombreador 5