jeugpu     Rechercher trouver 4120

 tg2 f2 lin2 in2 Icône X 3 y2  p2 Tik vapeur2

Microsoft introduit une innovation dans DirectX 12 pour augmenter l'autonomie du GPU

Microsoft a officiellement annoncé aujourd'hui une nouvelle fonctionnalité pour DirectX 12, disponible en avant-première, visant à éliminer les goulots d'étranglement du CPU en augmentant l'autonomie des GPU.

Dans un article de blog détaillé, les ingénieurs Microsoft Amar Patel et Tex Riddell ont présenté le système « Work Graphs » pour l'autonomie GPU dans D3D12, qui vise à surmonter les limitations des charges de travail de calcul GPU courantes et à débloquer les capacités cachées des GPU. En termes simples, le nouveau système vise à évoluer vers un système de rendu piloté par GPU plus efficace, réduisant ainsi le besoin d'utiliser le processeur dans diverses charges de travail.

Dans de nombreuses tâches exécutant un GPU, un calcul initial sur le GPU détermine les actions ultérieures que le GPU doit effectuer. Ceci peut être réalisé en rappelant le CPU pour émettre un nouveau travail. Cependant, il est généralement préférable que le GPU puisse se contrôler directement. ExecuteIndirect dans D3D12 en est une forme, où l'application utilise le GPU pour écrire un tampon de commandes limité qui doit être traité séquentiellement sur le GPU pour émettre de nouveaux travaux.

La nouvelle option suggère que les threads de shader exécutés sur le GPU (producteurs) peuvent demander à effectuer d'autres travaux (consommateurs). Les consommateurs peuvent aussi être des producteurs. Le système peut planifier le travail demandé dès que le GPU a la possibilité de le terminer. L'application peut également permettre au système de gérer la mémoire pour les données transférées entre les tâches.

Ce sont des "Work Graphs" - un graphique de nœuds où le code shader de chaque nœud peut demander des appels à d'autres nœuds sans attendre leur exécution. Les graphiques de travail capturent l'intention algorithmique de l'utilisateur et la structure globale sans surcharger le développeur d'avoir à en savoir trop sur le matériel spécifique sur lequel il sera exécuté. La nature asynchrone maximise la liberté du système pour prendre des décisions sur la meilleure façon d'accomplir le travail.

Source GameGPU.tech

Commentaires (0)