GPU, pour dominer le monde

MSN - 09/03
Il y a trente ans, les processeurs et autres processeurs spécialisés assuraient presque toutes les tâches informatiques. Les cartes graphiques de cette époque étaient utiles pour accélérer le dessin de formes 2D dans Windows et dans les applications, mais à aucune autre fin. Avance rapide jusqu’à aujourd’hui, et les GPU sont devenus l’une des puces les plus dominantes du secteur. Mais ironiquement, l’époque où la seule fonction d’une puce graphique était graphique est révolue, l’apprentissage automatique et le calcul haute performance s’appuyant fortement sur la puissance de traitement du modeste GPU. Découvrez ce single core avec nous...

Il y a trente ans, les processeurs et autres processeurs spécialisés assuraient presque toutes les tâches informatiques. Les cartes graphiques de cette époque étaient utiles pour accélérer le dessin de formes 2D dans Windows et dans les applications, mais à aucune autre fin.

Avance rapide jusqu’à aujourd’hui, et les GPU sont devenus l’une des puces les plus dominantes du secteur.

Mais ironiquement, l’époque où la seule fonction d’une puce graphique était graphique est révolue, l’apprentissage automatique et le calcul haute performance s’appuyant fortement sur la puissance de traitement du modeste GPU. Rejoignez-nous pour découvrir comment cette puce unique a évolué d'un humble pousseur de pixels à un puissant moteur informatique à virgule flottante.

Au début, le processeur dirigeait tout

Revenons à la fin des années 1990. Le domaine du calcul haute performance, qui comprend les travaux scientifiques sur les supercalculateurs, le traitement des données sur des serveurs standards et les tâches d'ingénierie et de conception sur les postes de travail, repose entièrement sur deux types de processeurs : 1) des processeurs spéciaux conçus dans un seul but, 2 ) puces disponibles dans le commerce d'AMD, IBM ou Intel.

Le supercalculateur ASCI Red était l'un des supercalculateurs les plus puissants vers 1997, composé de 9 632 processeurs Intel Pentium II Overdrive (photo ci-dessous). Chaque unité fonctionne à 333 MHz, ce qui donne au système des performances de calcul théoriques maximales d'un peu plus de 3,2 TFLOPS (téra opérations en virgule flottante par seconde).

Puisque nous ferons beaucoup référence à TFLOPS dans cet article, cela vaut la peine de prendre un moment pour expliquer ce que cela signifie. En informatique, les nombres à virgule flottante (ou floats en abrégé) sont des valeurs de données qui représentent des valeurs non entières, telles que 6,2815 ou 0,0044. Les valeurs entières (appelées entiers) sont souvent utilisées dans les calculs nécessaires au contrôle des ordinateurs et de tout logiciel qui les exécute.

Les nombres à virgule flottante sont cruciaux pour les situations où la précision est essentielle, en particulier tout ce qui concerne la science ou l'ingénierie. Même des calculs simples, comme déterminer la circonférence d'un cercle, impliquent au moins une valeur à virgule flottante.

Depuis des décennies, les processeurs disposent de circuits séparés pour effectuer des opérations logiques sur les nombres entiers et les nombres à virgule flottante. Dans le cas du Pentium II Overdrive mentionné ci-dessus, il peut effectuer une opération de base en virgule flottante (multiplication ou addition) une fois par cycle d'horloge. En théorie, c'est pourquoi les performances maximales en virgule flottante d'ASCI Red sont de 9 632 processeurs x 333 millions de cycles d'horloge x 1 opération/cycle = 3 207 456 millions de FLOPS.

Ces chiffres sont basés sur des conditions idéales (par exemple en utilisant les instructions les plus simples pour des données respectueuses du cache) et sont rarement réalisables dans la vie réelle. Cependant, ils constituent une bonne indication des capacités potentielles du système.

D'autres supercalculateurs ont un nombre similaire de processeurs standard : le Blue Pacific du Lawrence Livermore National Laboratory utilise 5 808 puces IBM PowerPC 604e et le Blue Mountain du Los Alamos National Laboratory (ci-dessus) utilise 6 144 MIPS Technologies R1000.

Pour atteindre des téraflops de puissance de traitement, des milliers de processeurs sont nécessaires, tous pris en charge par de grandes quantités de RAM et de stockage sur disque dur. Cela était et est toujours dû aux exigences mathématiques de la machine.

Lorsque nous sommes exposés pour la première fois à des équations en physique, en chimie et dans d’autres matières à l’école, tout est unidimensionnel. En d’autres termes, nous utilisons un nombre pour représenter la distance, la vitesse, la masse, le temps, etc. Cependant, pour modéliser et simuler avec précision des phénomènes, davantage de dimensions sont nécessaires et les mathématiques s'élèvent dans le domaine des vecteurs, des matrices et des tenseurs.

Ils sont traités en mathématiques comme une seule entité mais contiennent plusieurs valeurs, ce qui signifie que tout ordinateur effectuant des calculs doit traiter de grands nombres en même temps. Étant donné que les processeurs de l’époque ne pouvaient gérer qu’un ou deux nombres à virgule flottante par cycle, des milliers de nombres à virgule flottante étaient nécessaires.

SIMD entre dans la mêlée :

MMX, 3DMaintenant ! et la Bourse de Shanghai

En 1997, Intel a mis à jour la famille de processeurs Pentium avec une extension technologique appelée MMX, un ensemble d'instructions tirant parti de huit registres supplémentaires ...
[Courte citation de 8% de l'article original]

Loading...