GPU Upload Heaps : une fonctionnalité DirectX 12 qui permet au CPU d’accéder directement à la VRAM

Une fonctionnalité DirectX 12 intéressante sur le papier et qui ressemble à l’aboutissement du BAR redimensionnable. Elle est disponible au sein du SDK Agility version 1.710.0 ; restera à connaître son impact réel dans les jeux.

L’Agility SDK 1.710.0 introduit une nouvelle fonctionnalité GPU pour DirectX 12 appelée GPU Upload Heaps. Elle permet au CPU d’accéder directement à la VRAM du GPU.

Image 1 : GPU Upload Heaps : une fonctionnalité DirectX 12 qui permet au CPU d'accéder directement à la VRAM
© AMD

Comme le rappellent les auteurs de l’article, historiquement, la VRAM d’un GPU était inaccessible au CPU. Depuis quelques années maintenant, les systèmes exploitent la fonctionnalité rBAR (Redimensionnable BAR). Cette technologie d’interface PCI Express optionnelle améliore le transfert de données entre le CPU et le GPU (une plus grande quantité de données transite et de manière simultanée plutôt qu’en file d’attente). Dans le cas du GPU Upload Heaps, la VRAM étant gérée par Windows, D3D donne directement au CPU accès à la VRAM ; « cela permet au CPU et au GPU d’accéder directement et simultanément à la mémoire, en supprimant la nécessité de copier les données du CPU vers le GPU, ce qui améliore les performances dans certains scénarios », explique les deux auteurs de l’article (Zichuan Gong et Giancarlo Devich).

À lire > Les meilleurs logiciels pour surveiller et optimiser sa carte graphique Radeon, GeForce ou ARC

Un SDK disponible pour les développeurs

À ce stade, nous ignorons les implications concrètes de cette fonctionnalité en matière de performances. Naturellement, sur le papier, moins il y a de transferts de données entre le CPU / GPU et la DRAM / VRAM, mieux c’est. D’autant plus que les jeux actuels deviennent toujours plus gourmands en VRAM et que dans le même temps, la mémoire vidéo du GPU est de plus en plus rapide.

Côté client, le prérequis pour profiter de ce GPU Upload Heaps est la prise en charge du rBAR. Grosso modo, celle-ci est assurée à partir des Core Intel de 10e génération et des Ryzen 3000 côté CPU, des Radeon RX 5000 et des GeForce RTX 3000 côté GPU. Précisons qu’AMD appelle le rBar le SAM (Smart Access Memory).

Image 2 : GPU Upload Heaps : une fonctionnalité DirectX 12 qui permet au CPU d'accéder directement à la VRAM
© NVIDIA
Image 3 : GPU Upload Heaps : une fonctionnalité DirectX 12 qui permet au CPU d'accéder directement à la VRAM
© AMD

Le GPU Upload Heaps est disponible pour les développeurs. La fonctionnalité est déjà prise en charge par les pilotes NVIDIA (pilote Game Ready version 531.41 ou plus récente) et Intel (pilote 31.0.101.4255 ou plus récent). Pour les GPU AMD, les développeurs doivent demander un pilote spécial à l’entreprise. Dans tous les cas, cette fonctionnalité vient d’être lancée par Microsoft (le 30 mars), donc n’attendez pas à ce qu’elle soit implémentée dans les jeux dans l’immédiat.

Source : Microsoft