Partager via


Sous-allocation dans les mémoires tampons

Les mémoires tampons ont toutes les fonctionnalités nécessaires dans D3D12 pour que les applications transfèrent une grande gamme de données temporaires de l’UC vers le GPU. Cette section couvre quatre scénarios courants pour l’utilisation et la gestion des ressources et des mémoires tampons.

Comme pour D3D11, les applications dans D3D12 doivent toujours déclarer l’utilisation de la mémoire lors de l’allocation de mémoires tampons dans D3D12 par rapport aux ressources dynamiques/intermédiaires dans D3D11, mais dans D3D12, les développeurs ont plus de flexibilité et un contrôle plus étroit sur l’utilisation de la mémoire. Les mémoires tampons, par le biais de la sous-allocation, ont toutes les fonctionnalités nécessaires pour la gestion de la mémoire de bas niveau.

Dans cette section

Sujet Description
chargement de différents types de ressources
Montre comment utiliser une mémoire tampon pour charger des données de mémoire tampon constantes et des données de mémoire tampon de vertex sur le GPU, et comment sous-allouer et placer correctement des données dans des mémoires tampons. L’utilisation d’une mémoire tampon unique augmente la flexibilité d’utilisation de la mémoire et offre aux applications un contrôle plus strict de l’utilisation de la mémoire. Montre également les différences entre les modèles D3D11 et D3D12 pour le chargement de différents types de ressources.
chargement de données de texture via des mémoires tampons
Le chargement de données de texture 2D ou 3D est similaire au chargement de données 1D, sauf que les applications doivent prêter une attention plus étroite à l’alignement des données lié à l’alignement des lignes. Les mémoires tampons peuvent être utilisées orthogonalement et simultanément à partir de plusieurs parties du pipeline graphique, et sont très flexibles.
lire des données via un de mémoire tampon
La lecture des données à partir du GPU, telles que la capture d’une capture d’écran, implique l’utilisation du tas de lecture différée.
Fence-Based gestion des ressources
Montre comment gérer la durée de vie des données de ressources en suivant la progression du GPU via des clôtures. La mémoire peut être réutilisée efficacement avec des clôtures qui gèrent soigneusement la disponibilité de l’espace libre en mémoire, par exemple dans une implémentation de mémoire tampon en anneau pour un tas de chargement.

gestion de la mémoire