|
|
|
Du projet
SETI@home à BOINC
Performances
des ordinateurs (III)
Le
logiciel client de SETI@home tourne aujourd'hui sur la plupart des plate-formes
: BSD, Darwin, Linux, SunOS, Mac, Windows, etc. La première version
tournait même sous MS-DOS.
A
l'époque, SETI@home comparaissait les performances des ordinateurs sur
base du nombre d'unités de travail par unité de temps. Ainsi un Pentium III prenait environ 18 heures pour
traiter une unité de travail et se voyait gratifier d'un point. Aujourd'hui ce calcul n'est plus
possible car les statistiques de tous les projets doivent être
comparables sous BOINC. C'est pourquoi la nouvelle version SETI
Enhanced exploite la notion de "crédit" plutôt que celle
d'unité de travail. On y reviendra. |

|
Contrairement au passé, il n'y a plus tellement de
différence entre processeurs car le temps de traitement dépend du taux
angulaire des unités de travail. On peut encore juste comparer les unités de travail avec le
taux angulaire mais la durée de traitement n'est plus une base de
référence pour établir un bon comparatif (benchmark). Ainsi le même
Pentium III peut aujourd'hui traiter une unité en 18 heures comme cela
peut durer... 120 heures !
En
général, un système tournant entre 1-1.2 GHz mettra entre 1 heure et 65
heures pour traiter une unité de travail. Un système de 2.4 à 2.8 GHz
mettra entre 0.5 et 20 heures tandis qu'un systsème de plus de 3 GHz
mettra entre 0.3 et 10 heures pour traiter la même unité.
|

|
Aujourd'hui,
la puissance de SETI@home est supérieure à celle de n'importe quel superordinateur.
En effet, la capacité globale de calcul de son
réseau constitué de plus d'un million d'ordinateurs dont une majorité
cadencé à plus de 1 GHz dépasse 200
TeraFLOPS
!
Globalement,
en 2006 SETI@home était 3 fois plus rapide que le NEC SX-8
de 65 TFLOPS considéré comme le superordinateur le plus performant (il
est utilisé dans les centres météo), et loin devant les 12.3 TeraFLOPS du fameux Asci White
d'IBM (un RS/6000 SP qui sera porté à 100 TeraFLOPS en 2007) ! La puissance de calcul a atteint un niveau jamais égalé
dans l'histoire de l'informatique et il est probable que son inventeur verra un
jour son nom dans les livres d'histoire. Et pour cause.
L'informatique
distribuée s'est avérée si performante que plusieurs dizaines d'autres projets ont
vu le jour. On en reparlera page suivante.
A l'heure des
processeurs Intel Pentium 6, Itanium (E8870) et autre G5 cadencés à quelques gigahertz,
un utilisateur peut analyser plusieurs unités de travail par jour et
renvoyer ses données à Berkeley en quelques secondes s'il dispose d'une connexion ADSL. |
|
La
puissance d'Internet réside notamment dans le fait qu'il est
accessible à tous, bon marché et qu'à travers
des logiciels clients installés en n'importe quel point du monde, le système permet d'utiliser
toute l'infrastructure informatique connectée au réseau; c'est
l'informatique distribuée. Ce partage des tâches a fait le
succès de BOINC et des applications distribuées qui se comptent
aujourd'hui par dizaines. Document Islight/Lombry. |
Que
vous coûte cette activité ? Un ordinateur bien sûr, le coût en électricité est dérisoire, quant à la ligne téléphonique, elle
fait généralement partie d'un forfait à quelques dizaines d'euros par mois.
Aussi le défi est-il oh combien passionnant si un jour votre logiciel découvre
quelque chose de suspect !
Si
on analyse le temps CPU global consacré à SETI@home par les différents pays, aux
trois premières places du classement établi par BOINC se trouvent les
Etats-Unis, l'Allemagne et l'Angleterre, du fait de leur grande population
et leur intérêt pour Internet. Ce classement est inchangé depuis plusieurs années. Le Canada vient en 4eme
place, suivi du Japon, de l'Australie et
de la France. La Suisse est 18eme, la Belgique
20eme
et le Luxembourg
54eme.
La Chine a fait son entrée en 26eme
place et a déjà gagné 15 places en 2 ans ! Les
moins actifs sont évidemment les pays actuellement en guerre ou sous
régime totalitaire (Sierra Leone, Lybie, Liberia, Grenade et Soudan).
Si
nous établissons à présent un classement par utilisateur, l'équipe SETI.Germany
qui a commencé timidement en 2000 est N°
1 depuis quelques années. Déjà en 2003 elle traitait en moyenne plus de
20000 unités par jour, dix fois plus que la France ! L'Alliance
francophone, une émanation de BOINC France, est aujourd'hui en 5eme position devant
la Planetary Society, HP, l'USAF, Microsoft ou IBM.

|

|
|
A
gauche, les CPU les plus performants sont situés au-dessus à
droite du graphe. Ils sont équipés de cache de second niveau de 1 ou 2 MB et d'un bus
très rapide. Par ailleurs un processeur ayant trop de cycles d'attente
sera peu performant car il perdra son temps à attendre la
réponse de la mémoire. Actuellement les PC les plus rapides
sont les AMD Athlon 64, Intel Pentium 6, Sun
Enterprise 5500, Sun Ultra 80 et PowerMac G5. A droite, en 2006,
soit après 7 ans d'exploitation, SETI@home avait atteint près de
10 milliards de crédits et équivaut à un superordinateur de 200
TFLOPS, trois fois plus rapide que le NEC SX-8 ! Bravo Internet !
Mais sur les 500000 inscrits au projet à peine 160000 sont actifs
en permanence. Un graphique similaire
est disponible sur BOINCstats.
Documents SETI
bench et BOINC
Synergy.
|
|
Mais
si on effectue un tri sur la vitesse de traitement, étonnemment ce sont souvent
les petits pays (Pitcairn, Niger, Tuvalu, Mongolie, Antarctique, etc) qui viennent en tête avec une
moyenne de 4 heures de traitement par unité de travail du fait que les quelques
dizaines d'amateurs de ces pays utilisent des ordinateurs récents cadencés à plus
de 1 GHz.
Quant
aux processeurs
les plus rapides, on retrouve à la première place l'AMD Athlon 64 3200+
suivi de l'Intel Pentium 4 de 3 GHz, tout deux fonctionnant dans
l'environnement Windows et en troisième place le Silicon Graphics IP35
pour l'environnement IRIX64. Le processeur i86PCAMD64 pour SunOS est en 9eme
place, l'AMD Opteron pour Linux en 11eme
place et le G5 (multicore PPC970MP de l'Apple Macintosh) pour Darwin est
en 13eme
place.
Le
logiciel et les données ont dû être protégés en 2003 car quelques
utilisateurs ont cru bon d'envoyer de fausses données signalant des
émissions SETI à Berkeley ou ont amélioré certaines routines afin que le
logiciel traite les transformées de Fourier plus rapidement. Mais en agissant de la sorte, ces
utilisateurs pirates, parfois bien intentionnés, ne respectaient pas le
protocole mis en place et bafouaient l'éthique même du projet qui reste, il ne
faut pas l'oublier, un programme scientifique à part entière qui se doit de
respecter un environnement de travail déterminé qui ne souffre aucune exception.
Jusqu'à
la version BOINC, des utilitaires se greffaient sur SETI@home donnant des statistiques
complémentaires. Aujourd'hui ces outils sont inutilisables et ont été repris
par différents produits exploitant l'interface BOINC sur laquelle nous
reviendrons dans un instant.
A
consulter : Statistics
and leaderboards - Boing Combined
Stats - Boing Stats
 |
 |
|
Si on réalise une FFT inverse d'une unité de travail (work
unit) grâce à l'utilitaire WU2WAV
de Jan Knutar, du temps de SETI@home "classic"
(v3.08) on pouvait convertir les données numériques en son.
Aujourd'hui, la plupart du temps vous n'entendez que le fond
de bruit galactique mais qui sait, un jour, vous entendrez peut-être un WOAW ! Ci-dessus deux analyses spectrales
d'une unité de travail traitées avec WU2WAV dont voici le fichier
son. A gauche sous Skysweeper
Pro, à droite sous Spectran.
Beaucoup de bruit, quelques parasites, rien de suspect cette
fois-ci. |
|
Ressources
système
Si
en théorie le client SETI@home est transparent et n'affecte pas votre
travail bureautique, infographique ou multimédia, ainsi
que nous l'avons expliqué, le traitement des FFT est intensif et peut affecter le temps de réponse
des ordinateurs peu performants sur lesquels vous avez installé des applications
en même temps que la nouvelle version BOINC de SETI@home et éventuellement plusieurs
autres projets que nous décrirons en dernière page.
|
Lorsque
vous utilisez des applications bureautiques (traitement de texte,
messagerie, Internet par exemple) et sollicitez donc
peu le processeur, SETI@home en revanche va s'en accaparer et s'arranger pour l'utiliser à plus 90%
de ses capacités. Il remplira également entre un quart et plus de
trois-quarts de la mémoire vive selon votre paramétrage. Un ordinateur
ayant en permanence au moins 20 à 30 processes actifs dont plusieurs
occupant plus de 25% de la mémoire, même si SETI libérera l'espace
mémoire qu'il utilise, cela crée des goulots d'étranglement et laisse peu de
place pour les applications concurrentes les plus gourmandes.
Si vous constatez des anomalies
sur votre ordinateur (temps de réaction très lent, appel constant au
disque virtuel, blocage temporaire lors du passage d'une application à
l'autre, etc), je vous conseille tout d'abord de ne lancer qu'une seule application
bureautique à la fois (les plus grosses en tout cas), et donc de fermer
les autres. Si le problème subsiste, détachez tous les projets sauf
SETI@home, tant pis pour les autres, et n'abusez pas des graphiques, car toutes les 60 ou 90
minutes chaque changement de process va solliciter votre ordinateur. Bien
sûr l'idéal serait de remplacer cet ordinateur par un plus puissant,
et pourquoi pas de sauter quelques générations jusqu'au processeur de 3
GHz, cache L2 de 512 KB, 1 GB RAM et au moins 100 GB d'espace disque...
Rassurez-vous c'est devenu une configuration
standard ! De toute façon, demain lui aussi sera dépassé !
|

|
|
Aujourd'hui
un processeur de 3.5 GHz associé à 1 GB de RAM, une carte vidéo
fast AGP ou PCI Express et un disque dur de 100 GB revient à
environ 1000 € sans écran. C'est un excellent premier choix pour
des applications graphiques et multimédia. Cette installation sera
encore performante, bien que démodée, dans 3 ou 4 ans, où plus
tard, selon votre usage.
|
Si vous êtes
connecté sur plusieurs projets simultanément sous l'interface BOINC et désirez afficher les
graphiques 3D, tout se passera bien tant que votre système est cadencé
à au moins 500 MHz, dispose d'au moins 256 MB RAM, 50 GB de disque et
utilise un système d'exploitation récent. Mais c'est vraiment une
configuration minimum. Notons qu'il s'agit de la configuration d'un ordinateur de...1999 !
Voyons
à présent les avantages de la plate-forme BOINC.
Prochain
chapitre
La
plate-forme BOINC
|
Page 1 - 2 - 3
- 4 - 5 -
|
1 teraFLOPS = 1 milliard d'opérations en virgule flottante
par seconde (ou 1000 Mips) = 2500 CPU Pentium cadencés à 450 MHz.
Un PC cadencé à 1 GHz présente une capacité de calcul
d'environ 1 GFLOPS mais la progression n'est pas strictement
linéaire car elle dépend des performances des caches du
processeur. Seuls des benchmarks peuvent déterminer les
performances de calcul de votre ordinateur. Bien qu'on trouve dans
la littérature "flop" au singulier - c'est devenu un
néologisme - le terme devrait toujours s'écrire
"FLOPS", avec "s", car c'est le diminutif de
"seconde" (FLoating-point Operation Per Second) et en
majuscule puisqu'il s'agit d'un acronyme. Le pluriel devrait
s'écrire "FLOPSs" mais il est très peu répandu (et je
ne l'utilise pas non plus).
Notons
qu'une simple calculatrice de poche réalise en théorie une seule
opération par seconde. Nous avons rarement besoin d'un temps de
réponse plus rapide. Subjectivement, nous considérons que toute
réponse affichée en moins de 0.1 seconde est instantanée. Cela
permet d'attribuer aux calculatrices une performance d'environ 10
flops. Quant au méthodes de calculs manuelles (une division
difficile), notre performance tombe en général à environ 1
milliflops. Ces performances sont bien sûr très différentes de
celles de nos facultés neuromotrices.
|
|
|