ID3D11DeviceContext ::D ispatch, méthode (d3d11.h)
Exécutez une liste de commandes à partir d’un groupe de threads.
Syntaxe
void Dispatch(
[in] UINT ThreadGroupCountX,
[in] UINT ThreadGroupCountY,
[in] UINT ThreadGroupCountZ
);
Paramètres
[in] ThreadGroupCountX
Type : UINT
Nombre de groupes distribués dans la direction x. ThreadGroupCountX doit être inférieur ou égal à D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION (65535).
[in] ThreadGroupCountY
Type : UINT
Nombre de groupes distribués dans la direction y. ThreadGroupCountY doit être inférieur ou égal à D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION (65535).
[in] ThreadGroupCountZ
Type : UINT
Nombre de groupes distribués dans la direction z. ThreadGroupCountZ doit être inférieur ou égal à D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION (65535). Au niveau de fonctionnalité 10, la valeur de ThreadGroupCountZ doit être 1.
Valeur de retour
None
Remarques
Vous appelez la méthode Dispatch pour exécuter des commandes dans un nuanceur de calcul. Un nuanceur de calcul peut être exécuté sur de nombreux threads en parallèle, au sein d’un groupe de threads. Indexer un thread particulier, dans un groupe de threads à l’aide d’un vecteur 3D donné par (x,y,z).
Dans l’illustration suivante, supposons un groupe de threads avec 50 threads où la taille du groupe est donnée par (5,5,2). Un thread unique est identifié à partir d’un groupe de threads contenant 50 threads, à l’aide du vecteur (4,1,1).
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_GroupThreadID,SV_GroupID).
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | d3d11.h |
Bibliothèque | D3D11.lib |