Syntaxe
Membres
MaxWavesWithLateAllocParameterCacheType : UINT Spécifie le nombre maximal de vagues de dernière étape autorisées à s’exécuter sans allouer d’espace dans le cache de paramètres à allocation tardive. Des valeurs plus élevées permettent à davantage de vagues de s’exécuter, mais peuvent causer de la contention dans les unités SIMD (Single Instruction Multiple Data), car les nuanceurs se bloquent sur la première instruction exp jusqu’à ce que de l’espace soit disponible, ce qui peut monopoliser des emplacements de vague, des GPR et d’autres ressources partagées. La « dernière étape » est l’étape qui précède le nuanceur de pixels : VS, DS ou GS. Pour GS, cela n’affecte que la partie pass-through du nuanceur. Pour trouver les paramètres optimaux pour différentes parties d’une scène, envisagez d’utiliser les expériences Dr. PIX. Définir MaxWavesWithLateAllocParameterCache à une valeur supérieure à 22 peut entraîner des interblocages du GPU. Si ces interblocages sont causés par une transition du pipeline GPU, ils peuvent être rares et difficiles à reproduire. Pour prévenir de tels interblocages avec des valeurs élevées du membre MaxWavesWithLateAllocParameterCache, assurez-vous que le membre VSDisableCUMask a une valeur non nulle, afin qu’au moins une unité de calcul (CU) n’exécute pas de nuanceurs de sommets, ce qui empêche les interblocages. En général, par rapport aux gains de performance obtenus en définissant MaxWavesWithLateAllocParameterCache, l’incidence de l’opération de masquage sur les performances est négligeable. VSDisableFlags
Type : D3D12XBOX_SHADER_UNIT_DISABLE_FLAGS Champ de bits qui spécifie les unités de calcul à désactiver pour le nuanceur de sommets. reserved0
Type : UINT Réservé. GSDisableFlags
Type : D3D12XBOX_SHADER_UNIT_DISABLE_FLAGS Champ de bits qui spécifie les unités de calcul à désactiver pour le nuanceur de géométrie. PSDisableFlags
Type : D3D12XBOX_SHADER_UNIT_DISABLE_FLAGS Champ de bits qui spécifie les unités de calcul à désactiver pour le nuanceur de pixels. VSMaxWaves
Type : UINT Spécifie le nombre maximal de vagues VS autorisées à s’exécuter simultanément sur le GPU. HSMaxWaves
Type : UINT Spécifie le nombre maximal de vagues HS autorisées à s’exécuter simultanément sur le GPU. reserved1
Type : UINT Réservé. GSMaxWaves
Type : UINT Spécifie le nombre maximal de vagues GS autorisées à s’exécuter simultanément sur le GPU. PSMaxWaves
Type : UINT Spécifie le nombre maximal de vagues PS autorisées à s’exécuter simultanément sur le GPU. VSMaxWavesForCuLocking
Type : UINT Spécifie le nombre maximal de vagues VS qui permettent le verrouillage des CU. HSMaxWavesForCuLocking
Type : UINT Spécifie le nombre maximal de vagues HS qui permettent le verrouillage des CU. reserved2
Type : UINT Réservé. GSMaxWavesForCuLocking
Type : UINT Spécifie le nombre maximal de vagues GS qui permettent le verrouillage des CU. PSMaxWavesForCuLocking
Type : UINT Spécifie le nombre maximal de vagues PS qui permettent le verrouillage des CU.
Remarques
Avec les paramètres MaxWavesForCuLocking, si le nombre de vagues en cours d’exécution est inférieur à ce nombre maximal, et si une nouvelle vague est prête mais ne peut être planifiée nulle part, le GPU « verrouille » une unité de calcul (CU) de sorte qu’aucune nouvelle vague provenant d’autres étapes (ou pipes) ne puisse l’utiliser jusqu’à ce que la nouvelle vague de cette étape soit finalement lancée. Cela aide à contrôler la « famine ». Utilisez la fonction d’assistance inline D3D12XboxInitializeDefaultGraphicsShaderLimits pour initialiser une structure D3D12XBOX_GRAPHICS_SHADER_LIMITS_DESC avec les valeurs par défaut.- D3D12XboxInitializeDefaultGraphicsShaderLimits
- SetGraphicsShaderLimitsX
- XboxSetGraphicsShaderLimits
- XboxSetGraphicsShaderLimits
- D3D12XBOX_DERIVED_GRAPHICS_STATE_DESC
- D3D12XBOX_EXTENDED_GRAPHICS_PIPELINE_STATE_DESC
- D3D12XBOX_EXTENDED_GRAPHICS_PIPELINE_STATE_DESC
Configuration requise
En-tête : d3d12_xs.hPlateformes prises en charge : consoles XBOX Series
