Résumé
L’Advanced Technology Group (ATG) effectue des revues de performances pour de nombreux jeux avant leur sortie. Des problèmes de performances courants se retrouvent dans de nombreux titres. Cette conférence présente plusieurs problèmes de performances courants, montre comment les identifier à l’aide de PIX et propose des solutions recommandées. Des ressources sont fournies pour aider les développeurs à identifier et résoudre les problèmes de performances GPU courants dans leurs jeux.Synthèse
- Mises à jour du Microsoft Game Development Kit (GDK) : les améliorations récentes du GDK incluent des enhanced barriers améliorées, la sursouscription des mesh shaders, un mode swizzle de texture 3D mis à jour, la nouvelle API
XGSuggestSwizzleMode, la prise en charge des ROV (Rasterizer Ordered Views) et des optimisations de la mémoire pour la XBOX Series S. - Goulot d’étranglement du cache de paramètres : examine les écritures dans le cache de paramètres, les benchmarks, la suppression des exportations de sommets inutilisées, les règles de compactage des paramètres, des exemples concrets, le compactage manuel, les attributs à virgule flottante 16 bits (FP16) et les stratégies de compactage.
- Copies et effacements consécutifs : aborde la copie de tampons, les copies de tampons sans chevauchement, les choix d’API et de performances, ainsi qu’un shader de copie multiple personnalisé pour de meilleures performances.
- Géométrie : traite des problèmes liés à un nombre excessif de petits triangles, aux draws entièrement éliminés et aux triangles situés hors du frustum de vue.
- Variable Rate Shading (VRS) : couvre les gains apportés par le VRS, des conseils, le calcul de l’image de taux d’ombrage et la désactivation accidentelle du VRS.
- Plans d’affichage : fournit des informations sur les plans d’affichage, des recommandations de composition de l’interface utilisateur et les plans d’affichage HDR (High Dynamic Range).
- AMD FidelityFX™ Super Resolution (FSR) : partage des chiffres de performances et des suggestions pour FSR.
- Mise à l’échelle sur XBOX Series S : met en évidence les différences entre consoles, le traitement de la géométrie, les objets d’état de pipeline (PSO) hors connexion et des économies de mémoire supplémentaires.
- Calcul asynchrone : propose des suggestions pour le calcul asynchrone, l’utilisation de plusieurs pipes de calcul asynchrone et les limites des shaders.
- Delta Color Compression (DCC) et compatibilité des textures : aborde l’utilisation de la DCC et de la compatibilité des textures.
- Context rolls : fournit des informations sur les context rolls, les expériences Dr. PIX consacrées aux context rolls et des moyens de les réduire.
- Divers : inclut des conseils sur la correspondance entre la taille de la fenêtre d’affichage et celle de la cible de rendu, l’utilisation de pages de 2 Mo pour les tampons de profondeur, les calculs sur les valeurs des tampons de constantes et la conversion d’un pixel shader (PS) de quad plein écran en compute shader (CS).
Objectifs d’apprentissage
- Comprendre les points forts des récentes mises à jour du GDK, notamment les enhanced barriers, la sursouscription des mesh shaders et les économies de mémoire sur XBOX Series S.
- Découvrir les goulots d’étranglement du cache de paramètres, notamment les écritures dans le cache de paramètres, les benchmarks et les stratégies de compactage des paramètres.
- Explorer les copies et effacements consécutifs, notamment la copie de mémoire, les choix d’API, les choix de performances et les shaders de copie multiple personnalisés pour de meilleures performances.
- Obtenir des informations sur le traitement de la géométrie, notamment les problèmes liés aux petits triangles, aux draws éliminés et aux triangles situés hors du frustum de vue.
- Découvrir les avantages du VRS et des conseils pour l’utiliser, notamment les gains du VRS, le calcul de l’image de taux d’ombrage et la manière d’éviter la désactivation accidentelle du VRS.
- Comprendre l’utilisation des plans d’affichage, notamment les recommandations de composition de l’interface utilisateur et la composition HDR.
- Découvrir des chiffres de performances de FSR et des suggestions pour optimiser FSR.
- Comprendre les différences entre la XBOX Series X et la XBOX Series S, notamment en matière de traitement de la géométrie et d’économies de mémoire.
- Explorer des suggestions pour le calcul asynchrone, notamment l’utilisation de plusieurs pipes de calcul asynchrone et les limites des shaders.
- Découvrir l’utilisation de la DCC et de la compatibilité des textures.
- Obtenir des informations sur les context rolls, notamment des moyens de les réduire.
- Découvrir des conseils divers, notamment la correspondance entre la taille de la fenêtre d’affichage et celle de la cible de rendu, l’utilisation de pages de 2 Mo pour les tampons de profondeur et la conversion d’un PS de quad plein écran en CS.
