Depuis le retrait de HP et de SGI, le marché des GPU (Graphics Processing Unit) pour stations de travail et supercalculateurs est aujourd'hui la chasse gardée de Nvidia et AMD qui rivalisent d'ingéniosité pour augmenter les performances en téraflops. Le processeur graphique K20X annoncé par Nvidia est déjà utilisé dans le supercalculateur Titan Cray XK7 de 20 pétaflops installé à l'Oak Ridge National Laboratory du Département américain de l'Énergie (DOE). Quant à la puce graphique FirePro SM10000 annoncée par AMD, elle est destinée aux ordinateurs et serveurs hautes performances dans des environnements virtualisés de type VDI.

Si les coprocesseurs graphiques sont plus puissants que les processeurs classiques pour réaliser des tâches spécifiques, des applications scientifiques et mathématiques notamment, ils sont toujours plus complexes à utiliser pour les développeurs. Ils sont beaucoup utilisés dans des domaines de recherche comme les sciences biologiques, climatiques, de l'énergie et de l'espace, où ils peuvent fournir la puissance de calcul nécessaire pour réaliser des simulations et des expérimentations. IBM et Intel offrent également des accélérateurs pour superordinateurs, mais il ne s'agit pas de processeurs graphiques, mais de Power BQC pour le premier et de Xeon Phi pour le second.

Des GPU pour épauler les CPU dans les supercomputers

Certains des superordinateurs les plus rapides du monde exploitent la puissance de traitement de CPU associés à des puces graphiques pour effectuer des calculs complexes. C'est ainsi que le supercalculateur Titan combine 18 688 puces graphiques Tesla K20X de Nvidia avec 18 688 processeurs 6274 16 coeurs d'AMD. C'est le GPU qui assume 80 à 90% du calcul. Le supercalculateur Tianhe-1A du National Supercomputer Center de Tianjin, en Chine, combine aussi des CPU et des GPU.

Selon Dan Olds, analyste principal chez Gabriel Consulting Group, « Nvidia a une bonne avance sur AMD en matière de GPU pour le calcul intensif ». Ajoutant que « cela fait plusieurs années déjà que Nvidia met au point des outils de programmation parallèle pour permettre aux développeurs d'écrire des applications pour les GPU ». De plus, « la présence d'AMD sur le marché de l'informatique haute performance est quasi nulle » et selon l'analyste, « pour apparaître comme une alternative à Nvidia, Intel et autres, le fabricant de puces doit être capable de proposer un environnement de programmation équivalent à OpenCL pour les frameworks parallèles ».

1,17 téraflops en double précision pour le K20

Le processeur graphique K20 de Nvidia est doté de 5 Go de mémoire et atteint 1,17 téraflops en double précision et 3,52 téraflops en simple précision. La performance double précision est plus importante pour les applications de calcul intensif, car elles nécessitent une plus grande précision pour les calculs en virgule flottante. Quant au processeur K20X, encore plus véloce, il est doté de 6 Go de mémoire et affiche des performances de 1,31 téraflops en double précision. Le K20X est trois fois plus rapide que son prédécesseur, le Tesla M2090, livré au milieu de l'année dernière.

Le K20 sera intégré dans des ordinateurs vendus par Hewlett-Packard, IBM, Asus, Fujitsu, Tyan, Quanta Computer et Cray. Mais Nvidia a refusé d'en donner le prix, dans la mesure où ses GPU seraient vendus par les fournisseurs de serveurs. En juin dernier à l'occasion du salon International Super Computing à Hambourg, Sumit Gupta, responsable de l'activité Tesla GPU computing chez Nvidia, nous avait donné une idée du prix du K20 : 3000 $ l'unité environ contre 2000 $ pour le K10. Les nouvelles puces intègrent des milliers de petits coeurs de traitement travaillant simultanément pour exécuter le code. Une fonction Hyper-Q permet d'accélérer l'exécution du code existant en optimisant le timing du traitement de manière intelligente.