Cœurs Nvidia CUDA et cœurs de tenseur : Quelle est la différence ?
Les GPU Nvidia ont parcouru un long chemin, non seulement en termes de performances de jeu, mais aussi dans d’autres applications, en particulier l’intelligence artificielle et l’apprentissage automatique. Les deux principaux facteurs responsables des performances des GPU Nvidia sont les cœurs CUDA et Tensor présents sur pratiquement tous les GPU Nvidia modernes que vous pouvez acheter.
Mais que font exactement ces cœurs, et s’ils sont tous deux utilisés dans des applications d’intelligence artificielle et d’apprentissage automatique, en quoi sont-ils différents ?
Que sont les cœurs CUDA et à quoi servent-ils ?
CUDA signifie Compute Unified Device Architecture, ce qui n’explique pas vraiment leur présence dans un GPU. Ces cœurs ont été introduits dans la gamme de GPU Nvidia dans l’architecture Maxwell de 2014 et se spécialisent dans le traitement parallèle.
Ils sont assez similaires aux cœurs de CPU en termes de fonctionnement, mais sont meilleurs pour gérer certaines tâches, notamment les hachages cryptographiques, les moteurs physiques, les projets liés à la science des données et même le développement de jeux.
Crédit image : Nvidia
Nous avons déjà expliqué comment les cœurs CUDA affectent les performances de jeu de votre PC, mais ils sont tout aussi utiles pour calculer des chiffres. Alors que les CPU les plus puissants ont des cœurs à deux chiffres, les GPU Nvidia sont dotés de plusieurs milliers de cœurs CUDA, ce qui les rend beaucoup plus rapides pour les charges de travail numériques. En outre, comme ils effectuent ces calculs en parallèle, les cœurs CUDA permettent d’obtenir des vitesses beaucoup plus élevées.
Les cœurs CUDA sont plus rapides que les cœurs de CPU ordinaires lorsqu’il s’agit de calculer des nombres, mais ils ne constituent pas la solution idéale. En effet, ils n’ont jamais été conçus pour être utilisés de cette manière. Les cœurs CUDA ont été conçus pour le traitement graphique et pour rendre les GPU Nvidia plus performants dans les jeux.
Que sont les cœurs tensoriels et à quoi servent-ils ?
Comme les GPU ont commencé à être utilisés pour l’intelligence artificielle et les charges de travail d’apprentissage automatique, Nvidia a introduit des cœurs Tensor dans l’architecture Volta pour ses GPU de centre de données à partir de 2017.
Cependant, il a fallu attendre l’architecture Nvidia Turing (GPU RTX de la série 20) pour que ces cœurs arrivent sur les GPU grand public. Rappelons que si les cartes de la série GTX 16 sont également basées sur l’architecture Turing, elles n’incluent aucun cœur de ray tracing ou de Tensor.
Alors que les cœurs CUDA étaient au mieux adéquats pour les charges de travail de calcul, les cœurs Tensor ont relevé le défi en étant significativement plus rapides. Alors que les cœurs CUDA ne peuvent effectuer qu’une seule opération par cycle d’horloge, les cœurs Tensor peuvent gérer plusieurs opérations, ce qui leur confère un incroyable gain de performance. Fondamentalement, les cœurs de tenseur ne font qu’augmenter la vitesse de multiplication des matrices.
Cette augmentation de la vitesse de calcul se fait au détriment de la précision, les cœurs CUDA étant nettement plus précis. Cela dit, lorsqu’il s’agit de former des modèles d’apprentissage automatique, les cœurs Tensor sont bien plus efficaces en termes de vitesse de calcul et de coût global ; c’est pourquoi la perte de précision est souvent négligée.
Comment les cœurs Tensor et CUDA affectent-ils les performances du GPU ?
Comme vous pouvez probablement le deviner maintenant, alors que les cœurs CUDA et Tensor peuvent gérer les mêmes charges de travail, il s’agit de cœurs spécialisés pour le rendu graphique et les charges de travail numériques, respectivement.
Cela signifie qu’en fonction de l’utilisateur auquel un GPU particulier est destiné, il aura un nombre différent de cœurs. Par exemple, si nous considérons la RTX 4090, le dernier et le meilleur GPU de jeu grand public de Nvidia, vous obtiendrez beaucoup plus de cœurs CUDA que de cœurs Tensor. 16 384 cœurs CUDA pour 512 cœurs Tensor, pour être précis.
En comparaison, le GPU Nvidia L40 pour les centres de données, basé sur la même architecture Ada Lovelace que la RTX 4090, possède 18 176 cœurs CUDA et 568 cœurs Tensor. Cette différence peut sembler minime, mais elle peut avoir une incidence considérable sur les performances de ces GPU.
En termes de performances théoriques, le L40 a 90,52 TFlops de performances FP16 et FP32 ainsi que 1 414 GFlops de performances FP64. Il s’agit d’une augmentation massive des performances par rapport aux 82,58 TFlops de la RTX 4090 en FP16 et FP32 et aux 1 290 GFlops de la RTX 4090 en FP64.
Si vous n’êtes pas familier avec les performances numériques des GPU, les chiffres ci-dessus concernant les performances en virgule flottante des GPU Nvidia ne vous diront peut-être pas grand-chose. Cependant, en résumé, ils montrent que le L40 est beaucoup plus rapide que la RTX 4090 lorsqu’il s’agit de calculs numériques – ceux qui sont nécessaires pour l’intelligence artificielle et les charges de travail basées sur l’apprentissage automatique.
L’amélioration des performances devient d’autant plus impressionnante si l’on considère la consommation d’énergie des deux GPU. La RTX 4090 a un TGP nominal (à ne pas confondre avec le TDP, il y a une petite différence) de 450W, tandis que le L40 n’est prévu que pour 300W.
Ces deux GPU feront tourner des jeux et entraîneront votre modèle d’apprentissage automatique sans problème. Cependant, la RTX 4090 sera meilleure pour faire tourner les jeux, et la L40 sera meilleure pour entraîner les modèles d’apprentissage automatique.
Cœurs CUDA et cœurs de tenseur : Qu’est-ce qui est le plus important ?
Les deux cœurs sont tout aussi importants, que vous achetiez votre GPU pour jouer ou pour le placer dans un rack de centre de données. Les GPU de jeu grand public de Nvidia utilisent un grand nombre de fonctions d’IA (notamment DLSS), et la présence de cœurs de tenseur à bord peut s’avérer utile.
En ce qui concerne les GPU pour centres de données, les cœurs CUDA et Tensor fonctionnent de toute façon en tandem la plupart du temps, de sorte que vous obtiendrez les deux, quel que soit le GPU que vous choisissez. Au lieu de vous concentrer sur un type de cœur spécifique dans votre GPU, vous devriez vous concentrer davantage sur ce que la carte graphique fait dans son ensemble et sur le type d’utilisateur auquel elle est destinée.
Les cœurs CUDA sont spécialisés dans la gestion des charges de travail graphiques, tandis que les cœurs Tensor sont plus performants pour les charges numériques. Ils travaillent ensemble et sont interchangeables dans une certaine mesure, mais ils gèrent leurs propres spécialisations, ce qui est la raison pour laquelle ils existent en premier lieu.
Différents GPU se spécialisent dans différents aspects. La RTX 4090 écrasera facilement tous les jeux que vous lui proposerez, alors que la RTX 4060 ne peut gérer que des jeux en 1080p. Si vous n’utilisez pas votre GPU pour jouer et que vous n’en avez besoin que pour calculer des chiffres ou entraîner des réseaux neuronaux, un GPU de centre de données de la série A comme l’A100 ou même le L40 est votre meilleur choix.
Les cœurs de votre GPU sont importants
Un plus grand nombre de cœurs de GPU vous permettra d’obtenir de meilleures performances globales, car votre GPU sera plus polyvalent et disposera de ressources dédiées au traitement de différentes tâches. Cependant, acheter aveuglément un GPU doté du plus grand nombre de cœurs n’est pas la meilleure décision à prendre. Prenez le temps de bien réfléchir à votre cas d’utilisation, examinez les capacités du GPU dans son ensemble, puis faites votre choix.
Les cœurs tenseurs sont-ils meilleurs que les cœurs CUDA ?
Les cœurs CUDA sont meilleurs pour les tâches de calcul parallèle à usage général, tandis que les cœurs Tensor sont meilleurs pour les charges de travail d’apprentissage profond et d’IA qui impliquent de grandes opérations matricielles.
Les cœurs de tenseur en valent-ils la peine ?
Les Tensor Cores sont de minuscules cœurs qui effectuent des multiplications matricielles très efficaces. La multiplication matricielle étant la partie la plus coûteuse de tout réseau neuronal profond, les Tensor Cores sont très utiles. En fait, ils sont si puissants que je ne recommande aucun GPU qui ne dispose pas de Tensor Cores.
À quoi servent les tensor cores de NVIDIA ?
NVIDIA Tensor Cores Les Tensor Cores permettent un calcul en précision mixte, adaptant dynamiquement les calculs pour accélérer le débit tout en préservant la précision. La dernière génération de Tensor Cores est plus rapide que jamais sur un plus large éventail de tâches d’IA et de calcul de haute performance (HPC).
Quelle est la différence entre les cœurs et les cœurs CUDA ?
Les cœurs CUDA (Compute Unified Device Architecture) sont l’équivalent pour les GPU Nvidia des cœurs de CPU qui ont été conçus pour prendre en charge plusieurs calculs en même temps, ce qui est important lorsque vous jouez à un jeu exigeant sur le plan graphique. Un cœur CUDA est très similaire à un cœur de CPU.