Comment le GPGPU va révolutionner le calcul parallèle

Les constructeurs de cartes graphiques, NVIDIA en tête, sont en train de bouleverser le monde des supercalculateurs. Vue d’ensemble de ce marché et de son évolution. Attention : dossier sur six pages !

Il faut comprendre que dans le monde du traitement parallèle, il est recommandé de découper une tâche en de multiples tronçons qui seront exécutés ‘en parallèle’ par les processeurs du cluster. Ce travail est plutôt ardu pour les programmeurs et n’est pas adapté à tous les types de tâches.

Les scientifiques sont rompus à cette technique, qu’ils appliquent dans de multiples secteurs : météorologie, nucléaire, médical, finances, etc. Toutefois, seuls les calculs de base sont ‘parallélisables’, le travail étant simplifié lorsque des opérations de calcul matriciel entrent en scène. Les unités spécialisées dans le multimédia ou le chiffrement n’ont donc que peu d’usages dans les supercalculateurs. Les enlever permet de réduire le nombre de transistors du processeur, et donc sa taille.

Nous comprenons donc mieux pourquoi les processeurs issus du monde de l’électronique embarquée sont si populaires dans les supercalculateurs : ils fournissent le strict nécessaire, mais avec un ratio performance par watt sans égal. Notez qu’IBM n’est pas le seul à suivre cette piste : SGI a ainsi fait la démonstration d’un système de calcul basé sur des processeurs Intel Atom.

Aller vers encore plus de simplicité

Une excellente manière d’augmenter la densité des supercalculateurs reste de multiplier le nombre de cœurs présents dans les processeurs. Mais tous les cœurs n’ont pas besoin de disposer d’une logique de contrôle complète. En adoptant une architecture où une unité de calcul en commande de multiples autres, nous augmentons encore le ratio puissance par taille du composant.

C’est ce qui a donné l’idée à IBM, Toshiba et Sony de concevoir le Cell, un processeur surpuissant, embarquant un PowerPC relativement classique, assisté de multiples unités de calcul. Initialement utilisé dans la PlayStation 3, ce composant est plutôt faible lors du traitement de nombres flottants en double précision, ce qui peut parfois poser problème (pour certains calculs très précis, ou les phases de prototypage d’une application). Le PowerXCell 8i corrige largement ce petit défaut.

Avec le Cell nous ne parlons plus de quelques dizaines de gigaflops, mais de pas moins de 230 gigaflops en simple précision pour 108,5 gigaflops en double précision. C’est pourvu de cette technologie que le supercalculateur Roadrunner a pris – sans peine – la tête du TOP500.

wafernehalem.jpg