Unités de calcul AMD vs cœurs Nvidia CUDA : quelle est la différence ?
Si vous avez adhéré à Nvidia et AMD, vous découvrirez peut-être les spécifications de leurs GPU que ces deux entreprises aiment utiliser. Par exemple, Nvidia aime insister sur le nombre de cœurs CUDA pour séparer son offre des cartes AMD, tandis qu’AMD fait de même avec ses unités de calcul.
Mais qu’impliquent ces termes en fait ? Un cœur CUDA est-il la même chose qu’une unité de calcul ? Si non, après c’est quoi la différence ?
Répondons à ces préoccupations et voyons également ce qui différencie un GPU AMD d’un GPU Nvidia.
Architecture générale d’un GPU
Tous les GPU, qu’ils soient d’AMD, de Nvidia ou d’Intel, fonctionnent de la même manière en général. Ils ont les mêmes parties essentielles et la disposition générale de ces composants est similaire à un degré supérieur.
Ainsi, d’un point de vue descendant, tous les GPU coïncident.
Lorsque nous examinons les composants particuliers et exclusifs que chaque fabricant intègre directement dans son GPU, les distinctions commencent à apparaître. Par exemple, Nvidia développe des cœurs Tensor directement dans leurs GPU, alors que les GPU AMD n’ont pas de cœurs Tensor.
De même, AMD utilise des composants comme l’Infinity Cache, que les GPU Nvidia n’ont pas.
Ainsi, pour reconnaître la distinction entre les unités de calcul (CU) et les cœurs CUDA, nous devons d’abord examiner le style général d’un GPU. Lorsque nous pouvons comprendre la conception et voir exactement comment fonctionne un GPU, nous pouvons clairement voir la différence entre les unités de calcul et les cœurs CUDA.
Comment fonctionne un GPU ?
Le premier point que vous devez comprendre est qu’un GPU traite des milliers, voire plusieurs instructions en même temps. Pour cette raison, un GPU a besoin de beaucoup de petits cœurs extrêmement parallèles pour faire face à ces directives.
Ces minuscules cœurs de GPU sont différents des énormes cœurs de CPU qui affinent une ligne directrice complexe par cœur à la fois.
Pour les circonstances, un Nvidia RTX 3090 a 10496 cœurs CUDA. D’autre part, l’AMD Threadripper 3970X à la pointe de la technologie n’a que 64 cœurs.
Ainsi, nous ne pouvons pas opposer les cœurs GPU aux cœurs CPU. Il existe de nombreuses différences entre un processeur et un processeur graphique du fait que les ingénieurs les ont conçus pour effectuer différentes tâches.
De plus, contrairement à un processeur moyen, chacun des cœurs GPU est configuré en clusters ou en groupes.
Enfin, un cluster de cœurs sur un GPU comporte divers autres composants matériels tels que des cœurs de traitement de texture, des unités de facteurs flottants et également des caches.
pour aider à traiter de nombreuses instructions en même temps. Ce parallélisme définit le style d’un GPU. De l’emballage d’une instruction à son traitement, un GPU fait n’importe quoi selon les principes de la gestion parallèle.
- Tout d’abord, le GPU reçoit une instruction de procédure à partir d’une file d’attente de directives. Ces directions sont généralement extrêmement vectorielles.
- Ensuite, pour résoudre ces directions, un planificateur de chaînes les transmet sur des collections principales privées pour traitement.
- Après avoir reçu les instructions, un planificateur de cluster central intégré désigne les directives aux cœurs ou aux éléments de traitement pour le traitement.
- Enfin, différents groupes de base affinent diverses directives en parallèle, et les résultats sont également présentés à l’écran. Ainsi, tous les graphiques que vous voyez à l’écran, un jeu vidéo, par exemple, ne sont qu’une collection de millions de vecteurs raffinés.
En bref, un GPU possède des milliers d’éléments de traitement que nous appelons « cœurs » organisés en collections. Les planificateurs nomment un travail à ces clusters pour obtenir une similarité.
Que sont les unités de calcul ?
Comme on l’a vu dans la zone précédente, chaque GPU possède des grappes de cœurs comprenant des aspects de traitement. AMD appelle ces clusters centraux des « unités de calcul ».
www.youtube.com/watch?v=uu-3aEyesWQ&t=202s
Les unités de calcul sont un ensemble de sources de gestion telles que des unités arithmétiques et logiques (ALU) identiques, des caches, des systèmes à virgule flottante ou des processeurs vectoriels, des registres, ainsi que de la mémoire pour stocker les détails des threads.
Pour rester simple, AMD ne commercialise que le nombre d’unités de calcul de leurs GPU et n’indique pas les éléments sous-jacents.
Ainsi, chaque fois que vous voyez le nombre d’unités de calcul, considérez-les comme un ensemble d’éléments de gestion et également de toutes les pièces associées.
Que sont les cœurs CUDA ?
Là où AMD aime garder les points simples avec la variété des unités de calcul, Nvidia rend les choses complexes en utilisant des termes tels que les cœurs CUDA.
Les cœurs CUDA ne sont pas précisément des cœurs. Ce ne sont que des appareils à facteur flottant que Nvidia aime qualifier de cœurs pour les fonctions marketing. Et, si vous gardez à l’esprit, les collections de base ont de nombreux périphériques à virgule flottante intégrés. Ces appareils effectuent des calculs vectoriels et rien d’autre.
Donc, les appeler un « noyau » est de la publicité et du marketing purs.
Par conséquent, un noyau CUDA est un élément de traitement qui exécute des procédures en virgule flottante. Il peut y avoir beaucoup de cœurs CUDA à l’intérieur d’un cluster de cœur solitaire.
Enfin, Nvidia appelle les core collections » Streaming Multiprocesseurs ou SMs. » Les SM comptent des unités de calcul AMD étant donné que les unités de calcul sont elles-mêmes des collections de base.
Quelle est la différence entre les unités de calcul et les cœurs CUDA ?
La principale distinction entre une unité de calcul et un noyau CUDA est que le premier fait référence à une collection de base et que le second fait référence à un élément de traitement.
Pour bien mieux comprendre cette distinction, prenons l’exemple d’une boite de vitesse.
Une boîte de vitesse est un appareil comprenant plusieurs équipements. Vous pouvez considérer la boîte de vitesses comme une unité de calcul et les équipements privés comme des dispositifs à virgule flottante des cœurs CUDA.
En d’autres termes, où les unités de calcul sont une collection d’éléments, les cœurs CUDA représentent un composant spécifique à l’intérieur de la collection. Ainsi, les unités de calcul et les cœurs CUDA ne sont pas équivalents.
C’est aussi pourquoi, lorsqu’AMD mentionne le nombre d’unités de calcul pour leurs GPU, elles sont constamment plutôt inférieures à celles des cartes Nvidia concurrentes et de leur cœur CUDA. Un contraste beaucoup plus souhaitable serait certainement entre la variété de multiprocesseurs de streaming de la carte Nvidia ainsi que la variété d’unités de calcul de la carte AMD.
Les cœurs CUDA et les unités de calcul sont différents et non comparables
Les entreprises ont l’habitude d’utiliser des termes déroutants pour proposer leurs articles sous le jour le plus efficace. Non seulement cela rend perplexe le consommateur, mais il est également difficile de surveiller les choses importantes qui comptent.
Assurez-vous donc de savoir quoi rechercher lorsque vous recherchez un GPU. Rester à l’écart du jargon marketing rendra votre décision bien meilleure et aussi plus simple.