Aller au contenu

Les cœurs Tensor : à quoi servent-ils vraiment ?

Les cœurs Tensor, ou Tensor Cores, sont des unités de calcul présentes dans certaines cartes graphiques récentes, en particulier chez NVIDIA. Leur rôle : accélérer les calculs utilisés par l’intelligence artificielle, et par quelques fonctions graphiques modernes.

L’idée tient en une phrase : au lieu de traiter les nombres un par un, ces cœurs sont conçus pour calculer très vite sur de grandes séries de valeurs.

Une carte graphique ne sert pas qu’à afficher une image

Pendant longtemps, une carte graphique a surtout été associée aux jeux vidéo, à la 3D ou au montage vidéo. Elle est très efficace pour réaliser un grand nombre de petites opérations en parallèle : calculer la couleur de milliers de pixels, appliquer des effets de lumière, générer une image en trois dimensions.

Cette capacité intéresse aussi l’intelligence artificielle. Pour reconnaître un visage sur une photo, traduire un texte ou générer une image, un programme doit manipuler une énorme quantité de valeurs numériques. Une carte graphique classique sait déjà le faire ; les cœurs Tensor ont été créés pour aller nettement plus vite sur ce type précis de calcul.

Pourquoi le mot « Tensor » ?

Dans ce contexte, un tensor n’est pas un composant matériel particulier. C’est simplement une façon de ranger des nombres dans un tableau.

Un nombre seul est une valeur simple. Une ligne de nombres forme une liste. Un tableau à lignes et colonnes peut représenter une image en noir et blanc, chaque case correspondant à la luminosité d’un pixel. Quand les données se complexifient — plusieurs couleurs, plusieurs images, plusieurs couches de calcul — on empile ces tableaux sur plusieurs dimensions. C’est ce que les logiciels d’IA appellent des tenseurs.

Du scalaire au tenseur Progression d’un nombre seul vers une liste, un tableau, puis un empilement de tableaux à plusieurs dimensions. 7 ScalaireVecteurMatriceTenseur un nombreune listeun tableauplusieurs dimensions
Un tenseur n’est qu’une généralisation du tableau de nombres à plusieurs dimensions.

Les cœurs Tensor sont donc spécialisés dans les calculs effectués sur ces grands tableaux de nombres.

Leur spécialité : multiplier des matrices

L’opération centrale accélérée par les Tensor Cores est la multiplication de matrices, une matrice étant simplement un tableau de nombres en lignes et colonnes. Plus précisément, un cœur Tensor réalise en une seule fois une multiplication suivie d’une addition : il calcule D = A × B + C. On parle de multiplication-accumulation.

Opération D = A × B + C d’un cœur Tensor Les matrices A et B en FP16 sont multipliées puis additionnées à C, avec accumulation du résultat D en FP32, le tout en un seul cycle. ABCD × + = Entrées en FP16 Accumulation en FP32 Multiplication puis addition, fusionnées en un seul cycle
Une brique de base : le même petit produit matriciel se répète des millions de fois dans un réseau de neurones.

Cela paraît théorique, pourtant c’est au cœur de nombreux usages. Dans un réseau de neurones, les données d’entrée traversent plusieurs couches de calcul. À chaque étape, des centaines, des milliers, parfois des millions de valeurs sont multipliées puis additionnées.

Prenons un exemple. Un logiciel doit identifier ce qu’il y a sur une photo. Il analyse d’abord les pixels, cherche des formes — lignes, contours, zones claires ou sombres —, puis combine ces informations pour décider s’il s’agit d’un chat, d’une voiture, d’un paysage ou d’un visage. Ce travail demande une quantité considérable de multiplications, exactement ce que les cœurs Tensor savent enchaîner.

Plus rapide, mais pour un travail bien précis

Un processeur classique est polyvalent : il gère le système, ouvre un navigateur, lance un programme, recalcule un tableur ou décompresse une archive. Une carte graphique, elle, possède déjà de nombreux petits cœurs qui travaillent en parallèle. Les Tensor Cores vont plus loin encore : ils sont optimisés pour une seule famille de calculs.

Cœur CUDA contre cœur Tensor Un cœur CUDA traite une valeur par cycle, un cœur Tensor traite une matrice entière par cycle. Cœur CUDA une valeur à la fois a·b+c 16 valeurs → 16 cycles Cœur Tensor une matrice à la fois 16 valeurs → 1 cycle Le même travail, un débit bien supérieur sur les calculs matriciels
Les Tensor Cores ne remplacent ni le processeur ni les cœurs classiques de la carte : ils viennent en renfort quand un logiciel sait les solliciter.

C’est un peu comme dans un atelier : un outil à main sert à tout, une machine dédiée fait bien plus vite une tâche répétitive. Encore faut-il que le logiciel lui confie ce type de travail.

Des calculs moins précis, mais suffisants

Pour gagner du temps, les Tensor Cores emploient souvent des nombres moins précis que ceux des calculs scientifiques traditionnels. Le résultat n’en devient pas inutilisable pour autant. Dans beaucoup de traitements d’IA, une très grande précision n’est pas nécessaire : une petite variation sur un nombre intermédiaire ne change pas le fait qu’une photo montre un chien, ni le sens d’une phrase.

FP32, FP16 et FP8 : nombre de bits par valeur Comparaison de la taille en bits des formats FP32, FP16 et FP8 ; moins de bits signifie moins de mémoire et plus de valeurs traitées à la fois. FP32 scientifique 32 bits FP16 IA 16 bits FP8 IA rapide 8 bits Moins de bits : moins de mémoire, et plus de valeurs traitées en même temps.
Formats FP16, BF16 ou FP8 pour la vitesse ; la carte conserve une précision plus élevée là où le résultat l’exige.

C’est un compromis assumé : on choisit une précision adaptée à l’usage pour gagner nettement en vitesse et réduire la mémoire consommée.

Dans les jeux : le cas du DLSS

Les Tensor Cores ne servent pas qu’à entraîner des modèles d’IA. Certains jeux les utilisent aussi, notamment avec les technologies de reconstruction d’image comme le DLSS. Plutôt que de calculer directement une image en très haute définition, le jeu en produit une version plus légère, qu’une IA reconstruit ensuite en une image plus nette.

Principe du DLSS Une image légère basse définition est reconstruite par une IA exécutée sur les cœurs Tensor en une image nette haute définition. basse définition Reconstruction par IA sur les cœurs Tensor haute définition Calculer léger, reconstruire net : davantage d’images par seconde.
Utile quand les effets sont lourds, comme avec le ray tracing.

Le gain n’est pas systématique : il dépend du jeu, des réglages et de la génération de carte. Dans certains cas l’amélioration est nette ; dans d’autres, quelques détails paraissent moins naturels.

Pour l’intelligence artificielle locale

Les cœurs Tensor deviennent particulièrement intéressants quand on fait tourner une IA directement sur son ordinateur. Selon les logiciels, ils peuvent accélérer :

  • la génération d’images ;
  • la transcription d’un enregistrement audio ;
  • la reconnaissance vocale ;
  • le traitement ou le classement de photos ;
  • l’exécution d’un modèle de langage local ;
  • l’amélioration d’une vidéo ou d’une image.

La mémoire vidéo de la carte reste tout aussi déterminante. Les Tensor Cores accélèrent le calcul, mais si le modèle est trop gros pour tenir dans la mémoire de la carte, les performances plafonnent.

Tous les logiciels n’en profitent pas automatiquement

Disposer d’une carte équipée de Tensor Cores ne suffit pas à accélérer tous les programmes. Le logiciel doit être prévu pour les utiliser, avec les bons pilotes et les bibliothèques adaptées. Les outils d’IA comme PyTorch, TensorFlow ou certains générateurs d’images savent le faire ; un logiciel de bureautique ou un navigateur, non. C’est une puissance spécialisée : très utile dans son domaine, sans effet sur le reste de la machine.

À retenir

Les Tensor Cores sont des accélérateurs intégrés à certaines cartes graphiques. Ils excellent dans les calculs répétitifs sur de grands tableaux de nombres, indispensables à l’intelligence artificielle, et traitent plus vite images, sons, textes et modèles, en s’appuyant sur des formats numériques compacts pour limiter la mémoire. Dans les jeux, ils aident à reconstruire une image plus détaillée sans exiger autant de puissance graphique.

Ce ne sont pas des cœurs graphiques de plus, mais des calculateurs spécialisés, taillés pour faire très vite ce que l’IA demande le plus souvent : multiplier et additionner énormément de nombres.