samedi 20 novembre 2010

Super Computing à la Nouvelle Orléans

Chaque année au mois de novembre a lieu au États-Unis la grande conférence "Super Computing" qui est l'occasion de faire le point sur l'état de l'art en matière d'informatique de pointe, on pourrait même parler ici d'informatique extrême.  C'est au cours de cette conférence qu'est établie l'une des deux éditions annuelles du "top 500" des ordinateurs les plus puissants de la planète.
Balade dans le "French Quarter"
Le "top 500" a un petit côté puéril dans le sens où c'est quasiment une question de fierté nationale de montrer aux yeux des observateurs ébahis que l'on possède la plus grosse… machine mondiale. D'un autre côté le "top 500" permet de quantifier les progrès technologiques et de se projeter dans l'avenir afin de déterminer quand l'informatique permettra de résoudre tel ou tel problème particulièrement gourmand en puissance de calcul.

Cette année Super Computing avait lieu à la Nouvelle Orléans et rassemblait 10 000 experts. Pour la première fois, la Chine a obtenu la première place au "top 500" avec la machine Tianhe-1A (Tianhe signifiant Voie Lactée en chinois) qui déploie une puissance de 2.6 petaFlops c'est-à-dire 2.6 millions de milliards d'opérations en virgule flottante par seconde, loin devant  la machine américaine Jaguar de la compagnie Cray qui n'aligne "que" 1.8 petaFlops.

Le "top 500" est déterminé en exécutant le même algorithme étalon sur toutes les machines. L'étalon nommé "LINPACK", consiste à résoudre un énorme système d'équations linéaires. La résolution nécessite un très grand nombre de calculs élémentaires qui  sont répartis sur l'ensemble des processeurs de la machine. LINPACK va s'exécuter d'autant plus rapidement que la vitesse des processeurs est grande, que leur nombre est important et qu'ils disposent d'un réseau suffisamment performant pour échanger des informations rapidement. L'algorithme lui-même est relativement simple et est donc facilement implantable quelque soit le type de processeur utilisé. Il est possible à partir des données constructeurs de déterminer la puissance théorique d'un ordinateur que l'on peut alors comparer avec la puissance mesurée. Dans la liste du "top 500" ces deux valeurs sont respectivement désignées par Rpeak (théorique) et Rmax(mesurée). Un rapport Rmax / Rpeak proche de 1 indique que l'architecture matérielle est parfaitement exploitée par l'algorithme.

Quand on regarde le rapport Rmax / Rpeak pour les premiers ordinateurs du Top 500, on voit que la machine chinoise présente un ratio de 0.55 alors qu'il est de 0.78 pour le Jaguar américain et même 0.84 pour la machine française classée 6ème au Top 500. En fait la machine chinoise est hybride et tire l'essentiel de sa puissance d'une utilisation massive de processeurs graphiques (américains) détournés à des fins de calcul. Cette architecture est astucieuse mais introduit des contraintes de programmation importantes et certaines applications complexes ne peuvent pas l'exploiter pleinement. Tianhe est donc une machine taillée pour le Top 500 mais elle serait certainement plus difficilement exploitable dans un autre cadre et se comparerait sans doute à la moyenne de ses concurrentes directes.

Ceci étant, la performance chinoise est excellente car il est loin d'être évident d'assembler une telle machine et le réseau d'interconnexion qui est parait-il de conception entièrement chinoise est certainement très performant.  

Sur un plan moins technique, il est intéressant de noter qu'une partie des 10 premières machines du "top 500" est, principalement destinée à des usages militaires. La machine française TERA100 est installée dans les locaux de la Direction des Affaires Militaires (DAM) du CEA et va servir aux modélisations et simulations nécessaires à la mise au point des armes nucléaires de demain. Elle prend le relai de TERA 10 qui était déjà bien placée au "top 500" en son temps. Il en est de même pour le "Road Runner" de Los Alamos,  et n'en doutons pas, pour Tianhe. Incontestablement, la dissuasion nucléaire se déplace maintenant vers l'informatique et il viendra peut-être un jour où le nombre de têtes nucléaires disponibles dans un pays, sera moins significatif que la puissance informatique et le niveau d'expertise des informaticiens militaires.

En dehors des applications militaires, ces supercalculateurs sont indispensables pour modéliser de plus en plus finement des phénomènes physiques complexes tels que des écoulements turbulents, l'évolution de galaxies ou encore tenter de comprendre l'évolution du climat sur de grandes périodes de temps, en tenant compte de la complexité de l'ensemble du globe terrestre (océans, terre et atmosphère). Certaines disciplines ne peuvent progresser que par un recours à des ordinateurs de plus en plus puissants.
Une petite partie des équipements réseau mis en oeuvre
Mis à part le "top 500", la conférence Super Computing est l'occasion d'avoir une vue d'ensemble de tout ce qui touche à l'informatique de pointe, un gigantesque hall d'exposition et de démonstration permet aux participants de voir le matériel et de discuter avec des experts. 
La technologie déployée est impressionnante. Chaque année, des experts du monde entiers collaborent avec des fabricants de matériel pour créer, le temps de la conférence, SCINET, le réseau informatique le  plus rapide au monde. Cette années, pas moins de 270 km de fibres optiques ont été installées, le site de la Nouvelle Orléans était capable d'échanger 260 GigaOctets de données par seconde avec le monde extérieur (cela représente le contenu de 50 DVD chaque seconde) et une liaison expérimentale à 100 Gigabits par seconde était disponible pour réaliser des tests.

Quant à l'organisation, elle est à l'américaine avec de grands shows très colorés et hétéroclites, les exposants n'hésitant pas à payer de leur personne, tel ce constructeur qui faisait son exposé juché sur un monocycle et entravé par une camisole de force ! Ou tel autre qui avait engagé une diseuse de bonne aventure tirant les tarots et lisant dans une boule de cristal ! Dans un contexte scientifique, le décalage est total.  En tout cas, le show est bien rodé et vaut le déplacement.
Ce qu'il ne faut pas inventer pour attirer l'attention !

dimanche 7 novembre 2010

Vous ne regarderez plus votre appareil photo tout à fait de la même manière...

Le détecteur ATLAS sur le LHC (Copyright CERN)

Lorsque l'on montre les détecteurs qui sont installés sur le LHC, les visiteurs sont souvent impressionnés par le gigantisme et l'apparente complexité de la technologie mise en jeu. Il est pourtant possible à tout un chacun d'en comprendre le principe de fonctionnement en remarquant qu'un banal appareil photographique numérique possède un grand nombre de points communs avec les détecteurs de particules.

Un appareil photographique n'est rien d'autre qu'un détecteur de lumière, or, depuis qu'Einstein a décrit l'effet photo-électrique on sait que la lumière peut-être considéré comme un ensemble de particules que l'on nomme "photons". Les collisionneurs de particules produisent de grandes quantités de photons énergétiques. En photographie, l es grains de lumière ont une énergie bien plus faible, mais la physique sous-jacente est la même. Un appareil photographique est donc un détecteur spécialisé dans la détection de photons "faiblards" alors que les détecteurs en physique des particules sont également sensibles à d'autres types de particules, par exemple les électrons, les pions, les kaons, etc...

Le capteur CCD ou CMOS du boitier photo est l'élément sensible du système qui va convertir les flux de lumière en une série de signaux électriques. Un détecteur de particules contient également des éléments sensibles capables de produire des signaux  dépendant des caractéristiques de la particule détectées. Un détecteur va selon les cas, donner des informations permettant de retrouver  la position, l'énergie, la charge électrique, etc.

Le capteur photographique couleur est constitué d'une matrice de millions de pixels, chacun d'entre eux est muni d'un minuscule filtre coloré rouge, vert ou bleu. Un pixel touché va donc donner une information sur la position des grains de lumière incidents et sur la couleur de ceux-ci, c'est-à-dire sur leur énergie (un photon bleu est un peu plus énergétique qu'un photon rouge).

L'électronique du détecteur ou du boitier photo est destinée à récupérer les signaux électriques produits par les éléments sensibles, à les mettre en forme et à les coder sous une forme numérique (ce sont les fichiers ".jpg" des appareils photos). La mise en forme est très importante, il faut nettoyer les signaux électriques qui possèdent toutes sortes de biais, il faut également égaliser la réponse de l'ensemble des éléments de détection de façon à ce que deux grains de lumières (ou deux particules) ayant les mêmes caractéristiques produisent le même signal en chaque point du capteur (ou du détecteur). Tout ceci est heureusement fait automatiquement.

Les informations codées numériquement sont stockées sur la carte mémoire de l'appareil photo ou sur des systèmes de stockage très capacitif pour les détecteurs de particules. Une fois la carte mémoire vidée sur un PC il est possible d'appliquer des traitements supplémentaires avec des logiciels adaptés pour renforcer les contrastes, supprimer les yeux rouges, voire même cacher un bouton disgracieux... Les photos seront ensuite distribuées sur Picasa, Flickr ou Facebook en utilisant les réseaux informatiques. C'est le même processus pour la physique ; les données sont traitée, analysées, filtrées et distribuée dans le monde entier grâce aux réseaux informatiques afin que les physiciens puissent les exploiter et "taguer" les quelques particules ou phénomènes physiques qui auront été identifiés. Pour un physicien, le tag "Higgs" est aussi attendu et recherché que le tag "petite dernière" après une naissance attendue !

En physique, tout comme dans la vie, on ne photographie pas n'importe quoi. Le photographe observe la scène sur le petit écran de l'appareil et n'appuie sur le déclencheur que lorsqu'il est parfaitement content du cadrage et du niveau de zoom. De même, les détecteurs n'enregistrent pas tout  à chaque collision. Un système basé sur des mesures rapides mais grossières analyse rapidement  ce qui se passe et ne déclenche la lecture complète des centaines de millions d'information du détecteur que lorsque certains éléments indiquent que la collision a des chances d'être intéressante. Ce dispositif nommé "trigger" doit être extrêmement bien fait pour éviter d'introduire des biais dans les analyses de physique et surtout éviter de rater un phénomène intéressant.

Le principe des détecteurs de physique des particules n'est pas plus compliqué que cela, c'est la masse d'informations produites et la vitesse des "prises de vues" qui nécessitent la débauche de technologie que l'on observe dans les expériences installées sur le LHC.