GPU de jeu vs cartes graphiques HPC, similitudes et différences

GPU de jeu vs cartes graphiques HPC

Actuellement, il existe deux marchés différents auxquels les cartes graphiques sont destinées. Le plus populaire est le gaming où des dizaines de millions de fans de jeux vidéo sur PC les utilisent pour jouer à leurs jeux avec la meilleure fréquence d'images possible et/ou les meilleurs graphismes. L'autre marché est celui du calcul haute performance ou des GPU HPC. En quoi les deux types de graphiques sont-ils différents ?

Il ne fait aucun doute que les cartes graphiques ont subi une énorme évolution ces dernières années. Non seulement ils offrent la possibilité de reproduire des graphismes de plus en plus réalistes, mais leur puissance de calcul est également utilisée pour des applications scientifiques de toutes sortes et cela leur a permis d'atteindre plus de marchés que les jeux vidéo. Mais sur des marchés différents, des solutions différentes et comme on le sait déjà, les deux NVIDIA et AMD avoir des architectures conçues pour ce qui est de la reproduction de jeux vidéo d'une part et d'autre part pour le calcul scientifique.

À un niveau général, ils partagent une série d'éléments communs, mais ils apportent avec eux une série d'éléments différentiels qui en font des créatures différentes si l'on compare un HPC GPU architecture avec un GPU de jeu. C'est pourquoi nous avons décidé de vous parler des différences entre les deux types de GPU.

Précision des données, la principale différence entre GPU HPC et Gaming

Dans un jeu vidéo, le fait qu'une donnée ne soit pas tout à fait exacte n'est pas un problème, puisqu'on travaille généralement avec ce que l'on appelle mathématiquement une approximation. Ce qui consiste à utiliser des chiffres de moindre précision, mais avec suffisamment pour effectuer une simulation proche. Cela est dû au fait que le nombre de bits que nous pouvons affecter aux données dans les ALU est limité et plus de bits par ALU, plus de transistors et avec cela, la taille des transistors est plus grande. Étant donné que le budget transistor d'un GPU commercial est limité et que la précision des données n'est pas si importante, ce sacrifice finit par être fait.

Mais en calcul scientifique c'est différent, la précision des données est très importante pour effectuer les calculs. Une simple variation dans les données peut conduire à ce que le modèle avec lequel vous travaillez s'écarte trop ou à des résultats erronés. Imaginez la catastrophe qui se produirait si un GPU de faible précision était utilisé pour calculer certains éléments lors de la création d'un nouveau médicament et que par manque de précision, une erreur finit par entraîner un désastre sanitaire. Par conséquent, de nombreux GPU conçus pour le HPC utilisent des ALU de précision à virgule flottante 64 bits. Ce que nous ne voyons généralement pas les GPU utilisés pour les jeux pour un fait très évident.

L'utilisation d'instructions de plus grande précision nécessite la mise en œuvre d'ALU spécialisées et avec elle des changements dans l'ensemble de l'unité de shader, non seulement en ce qui concerne la mise en œuvre de ces ALU, mais aussi en ce qui concerne les registres, le jeu d'instructions et l'intercommunication.

La structure des coûts est différente sur un GPU HPC

HBM 2

Sur le marché grand public, par exemple, il n'est pas possible de vendre un gros GPU, car ce que les clients peuvent payer est très faible, et des types de mémoire extrêmement coûteux tels que la mémoire HBM ne peuvent pas non plus être utilisés. Qui, bien qu'elle soit meilleure dans deux des trois variables (taille et consommation), perd en termes de coûts par rapport à la mémoire GDDR6, qui est beaucoup moins chère.

La limitation des coûts ne se produit pas dans le cas des GPU HPC, car ils sont conçus pour un marché où des coûts élevés rendent rentable l'utilisation de mémoires de type HBM. Par conséquent, les GPU de ce type utilisent généralement ce type de mémoire au lieu de la GDDR6. Si vos clients sont prêts à payer le prix d'un meilleur type de mémoire, ils le feront.

L'autre raison est que les supercalculateurs et les centres de données qui utilisent des GPU HPC sont généralement dus au fait qu'ils ont généralement leur consommation d'énergie déjà budgétée au préalable, où chaque watt utilisé doit être utilisé au maximum. Du fait que la mémoire HBM a une consommation en pJ/bit bien inférieure à celle de la GDDR6, elle a fini par s'imposer sur ce marché et cela a rendu toutes les futures conceptions de GPU HPC basées sur l'utilisation de ce type de mémoire, ce qui nécessite le utilisation d'interposeurs et donc de structures 2.5DIC.

Différents marchés, différents besoins

Nvidia-A100-HPC

Les GPU pour le rendu graphique utilisent une série d'unités que nous appelons une fonction fixe en raison du fait qu'elles ne sont pas programmables. Son travail? Effectuer certaines fonctions répétitives et redondantes lors de la génération des graphiques en temps réel que nous voyons à l'écran. Les cartes graphiques HPC sont différentes, beaucoup de ces unités n'en ont pas besoin et ne les utilisent donc pas.

Généralement, le changement le plus simple pour convertir un GPU de jeu en GPU HPC commence par l'aveuglement de la sortie vidéo. Mais comme nous l'avons vu dans les deux autres sections, les GPU HPC vont au-delà. Ce qui est vrai, c'est que les fabricants ont tendance à laisser ces types d'unités dans leurs GPU HPC. Ce qui est pour le moins paradoxal, surtout dans le cas des GPU utilisés dans la NVIDIA Tesla où les différentes unités ne sont pas utilisées. AMD, d'autre part, dans leur AMD Instinct basé sur l'ADNc, les a complètement éliminés de l'équation.

Pourquoi les unités inutilisées sont-elles toujours là ? Eh bien, en raison du fait qu'ils prennent peu de place, ils sont éteints lorsqu'ils ne sont pas utilisés et c'est un travail plus important de les retirer du milieu et de reconfigurer l'ensemble de la conception sans eux que de les maintenir. Après tout, ce ne sont pas des processeurs complets et prennent très peu de place. De quoi ne pas déranger malgré sa présence. Bien que le plus gros changement concerne le processeur de commandes graphiques, la plupart des GPU HPC ont cette unité désactivée et ne peuvent donc pas traiter la liste d'affichage créée par le Processeur pour générer des graphiques.