Les opérations en virgule flottante par seconde ( FLOPS , flops ou flop/s ) sont une mesure des performances informatiques , utile dans les domaines des calculs scientifiques qui nécessitent des calculs en virgule flottante .
Dans de tels cas, il s'agit d'une mesure plus précise que la mesure des instructions par seconde .
Arithmétique à virgule flottante
L'arithmétique à virgule flottante est nécessaire pour les nombres réels très grands ou très petits , ou pour les calculs qui nécessitent une large plage dynamique. La représentation à virgule flottante est similaire à la notation scientifique, sauf que tout est effectué en base deux, plutôt qu'en base dix. Le schéma de codage stocke le signe, l' exposant (en base deux pour Cray et VAX , en base deux ou dix pour les formats à virgule flottante IEEE et en base 16 pour IBM Floating Point Architecture ) et le significande (nombre après le point de base ). Bien que plusieurs formats similaires soient utilisés, le plus courant est la norme ANSI/IEEE 754-1985 . Cette norme définit le format des nombres 32 bits appelés simple précision , ainsi que des nombres 64 bits appelés double précision et des nombres plus longs appelés précision étendue (utilisés pour les résultats intermédiaires). Les représentations à virgule flottante peuvent prendre en charge une plage de valeurs beaucoup plus large que la virgule fixe, avec la possibilité de représenter de très petits nombres et de très grands nombres.
Plage dynamique et précision
L'exponentiation inhérente au calcul en virgule flottante assure une plage dynamique beaucoup plus large (les nombres les plus grands et les plus petits qui peuvent être représentés), ce qui est particulièrement important lors du traitement d'ensembles de données où certaines données peuvent avoir une plage de valeurs numériques extrêmement large ou lorsque la plage peut être imprévisible. En tant que tels, les processeurs à virgule flottante sont parfaitement adaptés aux applications à forte intensité de calcul.
Performances de calcul
Les FLOPS et les MIPS sont des unités de mesure des performances de calcul numérique d'un ordinateur. Les opérations à virgule flottante sont généralement utilisées dans des domaines tels que la recherche scientifique en informatique, ainsi que dans l'apprentissage automatique . Cependant, avant la fin des années 1980, le matériel à virgule flottante (il est possible d'implémenter l'arithmétique FP dans un logiciel sur n'importe quel matériel entier) était généralement une fonctionnalité facultative, et les ordinateurs qui en étaient dotés étaient considérés comme des « ordinateurs scientifiques » ou comme ayant une capacité de « calcul scientifique ». Ainsi, l'unité MIPS était utile pour mesurer les performances en nombres entiers de tout ordinateur, y compris ceux qui n'avaient pas une telle capacité, et pour tenir compte des différences d'architecture, des MOPS (millions d'opérations par seconde) similaires étaient également utilisés dès 1970 . Notez qu'en plus de l'arithmétique en nombres entiers (ou en virgule fixe), les exemples d'opérations en nombres entiers incluent le déplacement de données (A vers B) ou le test de valeur (si A = B, alors C). C'est pourquoi MIPS en tant que référence de performance est adéquat lorsqu'un ordinateur est utilisé dans des requêtes de base de données, le traitement de texte, les feuilles de calcul ou pour exécuter plusieurs systèmes d'exploitation virtuels. En 1974, David Kuck a inventé les termes flops et mégaflops pour décrire les performances des supercalculateurs de l'époque en fonction du nombre de calculs à virgule flottante qu'ils effectuaient par seconde. C'était bien mieux que d'utiliser le MIPS, qui était répandu, pour comparer les ordinateurs, car cette statistique avait généralement peu d'incidence sur la capacité arithmétique de la machine dans les tâches scientifiques.

Les FLOPS sur un système HPC peuvent être calculés à l'aide de cette équation :
Cela peut être simplifié au cas le plus courant : un ordinateur qui possède exactement 1 CPU :
Les FLOPS peuvent être enregistrés selon différentes mesures de précision. Par exemple, la liste des supercalculateurs TOP500 classe les ordinateurs en fonction des opérations de 64 bits ( format à virgule flottante double précision ) par seconde, abrégée en FP64 . Des mesures similaires sont disponibles pour les opérations 32 bits ( FP32 ) et 16 bits ( FP16 ).
Opérations à virgule flottante par cycle d'horloge pour différents processeurs
Records de performance
Enregistrements informatiques uniques
En juin 1997, l'ASCI Red d' Intel a été le premier ordinateur au monde à atteindre un téraflops et plus. Le directeur de Sandia, Bill Camp, a déclaré que l'ASCI Red avait la meilleure fiabilité de tous les supercalculateurs jamais construits et « était le summum de la superinformatique en termes de longévité, de prix et de performances ».
Le supercalculateur SX-9 de NEC a été le premier processeur vectoriel au monde à dépasser les 100 gigaFLOPS par cœur.
En juin 2006, l'institut de recherche japonais RIKEN a annoncé la sortie d'un nouvel ordinateur , le MDGRAPE-3 . Les performances de l'ordinateur plafonnent à un pétaFLOPS, soit presque deux fois plus vite que celles du Blue Gene/L, mais le MDGRAPE-3 n'est pas un ordinateur à usage général, c'est pourquoi il n'apparaît pas dans la liste Top500.org . Il dispose de pipelines à usage spécifique pour simuler la dynamique moléculaire.
En 2007, Intel Corporation a dévoilé la puce multi-cœur expérimentale POLARIS , qui atteint 1 téraflops à 3,13 GHz. La puce à 80 cœurs peut porter ce résultat à 2 téraflops à 6,26 GHz, bien que la dissipation thermique à cette fréquence dépasse 190 watts.
En juin 2007, Top500.org a signalé que l'ordinateur le plus rapide au monde était le supercalculateur IBM Blue Gene/L , mesurant un pic de 596 téraFLOPS. Le Cray XT4 a atteint la deuxième place avec 101,7 téraFLOPS.
Le 26 juin 2007, IBM a annoncé la deuxième génération de son supercalculateur de pointe, baptisé Blue Gene/P et conçu pour fonctionner en continu à des vitesses supérieures à un pétaFLOPS, plus rapidement que le Blue Gene/L. Lorsqu'il est configuré pour cela, il peut atteindre des vitesses supérieures à trois pétaFLOPS.
Le 25 octobre 2007, NEC Corporation of Japan a publié un communiqué de presse annonçant son modèle de série SX SX-9 , affirmant qu'il s'agissait du supercalculateur vectoriel le plus rapide au monde. Le SX-9 est doté du premier processeur capable d'atteindre une performance vectorielle de pointe de 102,4 gigaFLOPS par cœur.
Le 4 février 2008, la NSF et l' Université du Texas à Austin ont lancé des recherches à grande échelle sur un supercalculateur AMD et Sun appelé Ranger , le système de supercalcul le plus puissant au monde pour la recherche scientifique ouverte, qui fonctionne à une vitesse soutenue de 0,5 pétaFLOPS.
Le 25 mai 2008, un supercalculateur américain construit par IBM , baptisé « Roadrunner », a franchi le cap des pétaflops. Il est arrivé en tête de la liste TOP500 des supercalculateurs les plus puissants de juin 2008 et de novembre 2008 (hors ordinateurs de grille ). L'ordinateur est situé au Laboratoire national de Los Alamos au Nouveau-Mexique. Le nom de l'ordinateur fait référence à l' oiseau de l'État du Nouveau-Mexique , le géocoucou ( Geococcyx californianus ).
En juin 2008, AMD a sorti la série ATI Radeon HD 4800, qui serait la première carte graphique à atteindre un téraflops. Le 12 août 2008, AMD a sorti la carte graphique ATI Radeon HD 4870X2 avec deux GPU Radeon R770 totalisant 2,4 téraflops.
En novembre 2008, une mise à niveau du supercalculateur Cray Jaguar du laboratoire national d'Oak Ridge (ORNL) du ministère de l'Énergie (DOE) a porté la puissance de calcul du système à un pic de 1,64 pétaFLOPS, faisant de Jaguar le premier système pétaFLOPS au monde dédié à la recherche ouverte . Début 2009, le supercalculateur a été baptisé du nom d'une créature mythique, Kraken . Kraken a été déclaré le supercalculateur universitaire le plus rapide au monde et le sixième plus rapide au classement général TOP500 de 2009. En 2010, Kraken a été mis à niveau et peut fonctionner plus rapidement et est plus puissant.
En 2009, le Cray Jaguar a réalisé une performance de 1,75 pétaFLOPS, battant l'IBM Roadrunner pour la première place de la liste TOP500 .
En octobre 2010, la Chine a dévoilé le Tianhe-1 , un supercalculateur qui fonctionne à une vitesse de calcul maximale de 2,5 pétaFLOPS.
En 2010, le processeur PC le plus rapide a atteint 109 gigaFLOPS ( Intel Core i7 980 XE ) dans les calculs en double précision. Les GPU sont considérablement plus puissants. Par exemple, les processeurs de calcul GPU Nvidia Tesla C2050 atteignent environ 515 gigaFLOPS dans les calculs en double précision, et l'AMD FireStream 9270 culmine à 240 gigaFLOPS.
En novembre 2011, le Japon a annoncé avoir atteint 10,51 pétaFLOPS avec son ordinateur K. Il dispose de 88 128 processeurs SPARC64 VIIIfx dans 864 racks, avec une performance théorique de 11,28 pétaFLOPS. Son nom vient du mot japonais « kei », qui signifie 10 quadrillions , correspondant à la vitesse cible de 10 pétaFLOPS.
Le 15 novembre 2011, Intel a présenté un processeur x86 unique, nom de code « Knights Corner », capable de supporter plus d'un téraFLOPS sur une large gamme d' opérations DGEMM . Intel a souligné lors de la démonstration qu'il s'agissait d'un téraFLOPS soutenu (et non pas de « téraFLOPS bruts » utilisés par d'autres pour obtenir des chiffres plus élevés mais moins significatifs), et qu'il s'agissait du premier processeur à usage général à dépasser le téraFLOPS.
Le 18 juin 2012, le supercalculateur Sequoia d'IBM , basé au Laboratoire national Lawrence Livermore (LLNL) aux États-Unis, a atteint 16 pétaFLOPS, établissant ainsi le record du monde et s'emparant de la première place du dernier classement TOP500.
Le 12 novembre 2012, la liste TOP500 a certifié Titan comme le supercalculateur le plus rapide au monde selon le benchmark LINPACK, avec 17,59 pétaFLOPS. Il a été développé par Cray Inc. au Oak Ridge National Laboratory et combine les processeurs AMD Opteron avec les technologies d'unité de traitement graphique (GPU) NVIDIA Tesla « Kepler ».
Le 10 juin 2013, le satellite chinois Tianhe-2 a été classé comme le satellite le plus rapide au monde avec 33,86 pétaFLOPS.
Le 20 juin 2016, le système chinois Sunway TaihuLight a été classé le plus rapide au monde avec 93 pétaFLOPS sur le benchmark LINPACK (sur 125 pétaFLOPS de pointe). Le système a été installé au Centre national de supercalcul de Wuxi et a représenté plus de performances que les cinq systèmes les plus puissants suivants de la liste TOP500 réunis à l'époque.
En juin 2019, Summit , un supercalculateur construit par IBM et fonctionnant actuellement au laboratoire national d'Oak Ridge (ORNL) du ministère de l'Énergie (DOE), a pris la première place avec une performance de 148,6 pétaFLOPS sur High Performance Linpack (HPL), la référence utilisée pour classer la liste TOP500. Summit compte 4 356 nœuds, chacun équipé de deux processeurs Power9 à 22 cœurs et de six GPU NVIDIA Tesla V100.
En juin 2022, le Frontier des États-Unis est le supercalculateur le plus puissant du TOP500, atteignant 1102 pétaflops (1,102 exaflops) sur les benchmarks LINPACK.
Registres de calcul distribué
L'informatique distribuée utilise Internet pour relier les ordinateurs personnels afin d'obtenir davantage de FLOPS :
- En avril 2020 , le réseau Folding@home disposait de plus de 2,3 exaFLOPS de puissance de calcul totale. GPU et CPU puissantes .
- En décembre 2020 , l'ensemble du réseau BOINC a une moyenne d'environ 31 pétaFLOPS.
- En juin 2018 , SETI@home , utilisant la plate-forme logicielle BOINC , a une moyenne de 896 téraFLOPS.
- En juin 2018 , Einstein@Home , un projet utilisant le réseau BOINC , atteignait 3 pétaFLOPS.
- En juin 2018 , MilkyWay@home , utilisant l' infrastructure BOINC , calcule à 847 téraFLOPS.
- En juin 2020 , GIMPS , à la recherche de nombres premiers de Mersenne , maintient 1 354 téraFLOPS.