SV _ GroupIndex

Index « aplati » d’un thread de nuanceur de calcul dans un groupe de threads, qui convertit le SV multidimensionnel _ GroupThreadID en valeur 1D. SV _ GroupIndex varie de 0 à (numthreadsX * numthreadsY * numThreadsZ) – 1.

Type

Type
uint

Notes

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

où dimx et Dimy sont les dimensions spécifiées dans l’attribut numThreads pour le point d’entrée.

Cette valeur système est facultative. Toutefois, son utilisation garantit qu’un thread écrit uniquement dans la région de mémoire qui lui est assignée dans la variable groupshared.

L’illustration suivante montre la relation entre les paramètres passés à ID3D11DeviceContext ::D ispatch, Dispatch (5, 3, 2), les valeurs spécifiées dans l’attribut numThreads , numThreads (10, 8, 3) et les valeurs qui seront transmises au nuanceur de calcul pour les valeurs système liées aux threads (SV GroupIndex, SV DispatchThreadID, SV _ ,SV _ GroupID). _ _

illustration de la relation entre la répartition, les groupes de threads et les threads

Cette fonction est prise en charge dans les types de nuanceurs suivants :

Sommet Forme Domain Géométrie Pixel Compute
x

Voir aussi

Sémantique

Shader, modèle 5