Le Forum de l'Alliance Francophone

Nouvelles:

  • Projet du Mois FB: Asteroids@home

Auteur Sujet: [Traduit] Conférence de David Anderson  (Lu 3744 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne arnaud25

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 1162
le: 25 October 2004 à 22:40
Salut. :hello:

EDIT: Dimanche :Le texte ci-dessous est le texte que l'on espère définitif.
EDIT Djezz : DIMANCHE : Le texte est considéré correct. Il est publié ainsi sur Boinc.Fr. Vous pouvez toutefois toujours apporter vos commentaires, on verra bien. ;)
Edit Djezz : Merci à Douglas Riper, Philmo et Spike
Citer


Présenté à la Conférence sur la connaissance partagée et le Web, Residencia de Estudiantes, Madrid, Espagne, 17-19 Nov. 2003.

Calcul public: Reconnecter les gens avec la science

Dr. David P. Anderson
Laboratoire des sciences de l'espace
Université de Californie - Berkeley

Résumé

L'essentiel de la puissance de calcul mondiale ne se trouve plus dans les centres disposant de super-ordinateurs ni dans les salles informatiques institutionnelles. Elle est maintenant répartie sur toute la planète dans les centaines de millions d'ordinateurs personnels. Dans quelques années, d'autres produits de grande consommation comme les consoles de jeu et les décodeurs de télévision pourraient bien constituer une grande partie de la puissance de calcul totale.

Ce changement est fondamental pour les scientifiques qui mènent des recherches nécessitant une puissance de calcul extrême. Des projets comme SETI@home et Folding@home ont attiré des millions de participants qui offrent du temps de calcul sur leurs PCs pour la recherche scientifique. Des travaux sont en cours pour créer des projets similaires dans bien d'autres domaines, permettant ainsi des explorations scientifiques qui étaient auparavant impossibles.

Les implications de ce paradigme du "calcul public" sont aussi bien sociales que scientifiques. Il fournit un socle pour les communautés mondiales qui se rassemblent autour d'intérêts et d'objectifs communs. Il incite le grand public à s'informer des recherches scientifiques actuelles. Finalement, il donnera à la population un contrôle plus direct sur la direction du progrès scientifique.


1) Introduction

L'informatique a révolutionné les sciences. Les scientifiques ont développé des modèles mathématiques reproduisant fidèlement l'univers physique, et les ordinateurs programmés avec ces modèles peuvent approcher la réalité à plusieurs niveaux d'échelles: Un noyau atomique, une protéine, la biosphère terrestre ou l'univers entier. En utilisant ces programmes, on peut prévoir l'avenir, valider ou réfuter des théories, ou faire fonctionner des "laboratoires virtuels" qui étudient les réactions chimiques sans tube à essai.

En règle générale, plus la puissance de calcul est grande, mieux on peut simuler la réalité. Cela a incité au développement d'ordinateurs les plus rapides possible. Un moyen d'accélérer un calcul est de le "paralléliser", de le diviser en morceaux qui peuvent être traités en même temps, sur des processeurs différents. La plupart des super-ordinateurs fonctionnent de cette manière, en utilisant de nombreux processeurs dans une seule armoire.

Les acteurs économiques qui fournissent les technologies favorise la production à grande échelle. Une société fabriquant des processeurs peut dépenser plus en recherche et développement si elle est assurée de vendre ses puces par millions. Ainsi les puces utilisées dans les ordinateurs personnels (comme le Pentium d'Intel et le PowerPC de Motorola) se sont développées rapidement; en fait, leur vitesse a doublé tout les 18 mois, une tendance connue sous le nom de "loi de Moore".

Dans les années 90, deux choses importantes se sont produites. Premièrement, grâce à la loi de Moore, les PC sont devenus très rapides - aussi rapides que des super-ordinateurs à peine plus vieux qu'eux. Deuxièmement, l'Internet s'est ouvert au grand public. Tout d'un coup, des millions d'ordinateurs rapides se sont retrouvés connectés en réseau. L'idée d'utiliser ces ordinateurs comme un super-ordinateur parallèle vint alors indépendamment à plusieurs personnes. Deux projets de ce type virent le jour en 1997: GIMPS, qui recherchait des nombres premiers, et Distributed.net, qui décryptait des messages codés. Ces projets attirèrent des milliers de participants.

En 1999, un troisième projet, SETI@home, fût lancé, dans le but de détecter des signaux radios émis par des civilisations extra-terrestres intelligentes. SETI@home fonctionne comme un économiseur d'écran, tournant seulement lorsque le PC est inutilisé, et permettant de voir le travail effectué sous forme graphique. L'attrait de SETI@home dépassa les seuls initiés; Il attira des millions de participants dans le monde entier. Cela inspira plusieurs autres projets universitaires, ainsi que plusieurs sociétés privées qui cherchèrent à commercialiser ce concept de calcul public.



2) La puissance du calcul public

Le calcul public peut fournir plus de puissance de calcul que n'importe quel super-ordinateur, cluster ou grille, et cette tendance ira en s'amplifiant. SETI@home tourne actuellement sur environ 1 million d'ordinateurs. Cela fournit une puissance de calcul de 60 TeraFLOPS (un billion [NDT: mille milliards] d'opérations à virgule flottante par seconde). En comparaison, le plus puissant super-ordinateur conventionnel, l' ASCI White d'IBM, fournit 12 TeraFLOPs. Le million d'ordinateurs de SETI@home représente une minuscule fraction des quelques 150 millions de PC connectés à l'Internet de part le monde. On prévoit que ce chiffre devrait atteindre 1 milliard en 2015. Le calcul public peut ainsi potentiellement fournir plusieurs PetaFLOPs de puissance de calcul.

La loi de Moore permet d'affirmer que la vitesse de calcul des processeurs double tout les 18 mois. Ce taux de croissance est encore plus rapide pour les "coprocesseurs graphiques", ces puces qui gèrent le graphisme en 3D des PCs et des consoles de jeux. Leur puissance double tous les 8 mois, et les puces graphiques actuelles ont une vitesse de calcul arithmétique en virgule flottante équivalente à plusieurs fois celle du processeur principal. Ces puces graphiques deviennent plus flexibles et programmables, et les spécialistes cherchent activement à les utiliser pour le calcul scientifique. L'intégration des puces graphiques dans les ordinateurs personnels modernes favorise le calcul public sur les autres modes de calcul.

La plupart des tâches informatiques nécessitent de l'espace de stockage (espace disque) en plus des capacités de calcul. Ici aussi, les ressources publiques peuvent fournir une capacité sans précédent. De nos jours, un PC typique possède 80 Gigaoctets d'espace de stockage, ce qui, la plupart du temps, est plus que nécessaire. Si 100 millions d'utilisateurs devaient fournir 10 Gigaoctets de stockage, le total se monterait à 1 Exaoctet (10 à la puissance 18)- une capacité plus grande que n'importe quel système de stockage centralisé.

3) Aspect social du calcul public

Le calcul public n'est efficace que si beaucoup de monde y participe. SETI@home est à cet égard un vrai succès. Nous avons attiré 4.6 millions de participants dont 600000 sont toujours actifs.

Les gens ont appris l'existence de SETI@home de plusieurs façons. Grâce aux mass média et par l'intermédiaire de portails d'informations comme Slashdot [2]. L'économiseur d'écran graphique de SETI@home est aussi un puissant outil de promotion: Dans les bureaux et dans les écoles, où les écrans sont visibles par tous, un ordinateur faisant tourner SETI@home est une publicité particulièrement visible.

Qui participe à SETI@home, et pourquoi? Pour étudier cette question, nous avons effectué un sondage en ligne auquel environ 130.000 participants ont répondu. Notre site web permet aux utilisateurs de remplir un "profil" qui les décrit. Environ 50.000 l'ont fait. Nous avons créé des forums de discussion auxquels participent des milliers de personnes, et nous avons aussi des informations complémentaires grâce aux emails que nous envoient des milliers d'utilisateurs.

Notre sondage indique que 92% des utilisateurs de SETI@home sont des hommes, et qu'ils sont principalement motivés par l'intérêt scientifique du projet: Ils veulent savoir si une vie extra-terrestre intelligente existe. Une autre source de motivation majeure est la reconnaissance publique. SETI@home tient le compte de la contribution de chaque utilisateur (c'est à dire la quantité de calculs effectuée) et fournit plusieurs classements sur le site internet, où les utilisateurs sont classés selon leur contribution. Les utilisateurs peuvent également former des "équipes", qui ont leur propre classement. Ce système d'équipe s'est avéré très efficace pour recruter de nouveaux participants.

Certains participants à SETI@home tentent de "tricher"- D'obtenir des points pour un calcul qu'ils n'ont pas réellement effectué. Les utilisateurs qui renvoient intentionnellement des résultats incorrects posent encore plus de problèmes, essentiellement en faussant les calculs. Ces problèmes peuvent être contournés en calculant plusieurs fois une même unité de travail (redondance du calcul) et en comparant les résultats.

Les participants de SETI@home ont apporté d'autres contributions que le simple temps de calcul. Des volontaires ont traduit le site web SETI@home dans 30 langues et ont développé des programmes et des sites web complémentaires. Nous pensons qu'il est important de faire connaitre ce type de contribution.

Diverses "communautés" se sont formées autour de SETI@home. Il y a une communauté mondiale qui communique grâce au site web SETI@home. Il y a aussi des communautés nationales ou parlant une même langue, avec leurs propres sites webs et forums de discussion. Le groupe d'utilisateurs allemand SETI@home tient des conventions depuis plusieurs années déjà. Au moins trois couples se sont formés et mariés grâce aux communautés de SETI@home.

4) Aspects techniques du calcul public

Mettre en oeuvre un projet de calcul public nécessite d'adapter un programme à plusieurs plates-formes, de mettre en place un système de serveurs et des bases de données, de garder la trace des comptes d'utilisateurs et de leur crédit, de traiter les redondances et les erreurs, et d'autres tâches bien trop nombreuses pour être énumérées ici.

Nous développons actuellement un programme appelé BOINC (Berkeley Open Infrastructure for Network Computing) qui résout ou aide à résoudre la plupart de ces problèmes. BOINC permet facilement et pour un coût modique de convertir une application existante en projet de calcul public. Les projets BOINC sont autonomes. Chaque projet maintient ses propres serveurs et bases de données, et ne dépend pas des autres. Les participants peuvent s'inscrirent à plusieurs projets, et peuvent contrôler le temps de calcul alloué à chaque projet (par exemple, un utilisateur peut consacrer 60% de son temps CPU à l'étude du réchauffement climatique, et 40% à SETI).

Plusieurs projets basés sur BOINC sont actuellement en cours: SETI@home, un projet de biochimie appelé Folding@home [4], et un projet d'étude du climat appelé Climateprediction.net [3]. BOINC est un complément aux systèmes Grid qui permettent le partage des ressources à l'intérieur et parmi les institutions, mais ne sont pas accessibles au grand public [5].

5) Applications du calcul public

Pour être accessible au calcul public, une tâche doit être divisible en morceaux indépendants ayant un taux de calcul de données élevé (sinon, le coût de transfert des données par Internet pourrait excéder le coût d'un calcul centralisé). Plusieurs types de calculs ont ces propriétés:

Des systèmes physiques complexes ont un paramètre chaotique ou aléatoire. Leurs résultats sont probabilistes, non exacts. Etudier ces résultats de manière statistique nécessite de faire un grand nombre de simulations avec différentes conditions initiales et différentes conditions aux limites. Ces simulations peuvent être exécutées en parallèle.

Il y a le champ en évolution des "algorithmes aléatoires" [ref] qui fournissent des solutions approchées à des problèmes exacts. Ceux-ci nécessitent souvent des essais aléatoires qui peuvent être effectués en parallèle.

Les "algorithmes génétiques" sont applicables à beaucoup de domaines. Cette approche consiste à créer une population de solutions approchées à un problème, et d'utiliser les mécanismes de la sélection naturelle pour atteindre une solution optimale.

Les modèles décrivant les systèmes physiques comportent souvent un grand nombre de paramètres de base dont les valeurs optimales ne sont pas connues, et qui se combinent de manière non linéaire. Explorer ces espaces de paramètres nécessite un grand nombres de simulations indépendantes. Plus généralement, les algorithmes de "Monte-Carlo" nécessitent un grand nombre de calculs indépendants, correspondant à l'échantillonnage d'un espace de grande dimension.

Les applications qui comportent l'analyse de grandes quantités de données, telles que les données issues d'un radio-téléscope (ex: SETI@home) ou d'un accélérateur de particules sont par nature susceptibles d'un traitement parallèle. Le facteur limitant est le rapport calculs/données.

Certains projets médicaux nécessitent d'explorer un groupe composé de millions ou de milliards de molécules (par exemple pour rechercher un médicament potentiel). Ces tâches sont facilement parallélisées. De même, certains projets de génétique nécessitent de comparer un groupe de protéines avec une séquence d'ADN. A nouveau, ceci est facilement parallélisé.

6) Conclusion

Carl Sagan a remarqué que l'attitude générale du grand public envers la science est de plus en plus une attitude d'aliénation, voire d'hostilité [7]. Le calcul public pourrait aider à inverser cette tendance. Si les possesseurs d'ordinateurs peuvent offrir leurs ressources à un projet parmi une large palette, ils étudieront et évalueront ces projets en prenant connaissance de leurs objectifs, méthodes et chances de succès. Ce processus pourrait, de plus, être encouragé par la création de " marchés de décision" dans lesquels le public pourrait faire des paris virtuels ou des investissements basés sur le résultat des projets scientifiques, à la manière des marchés de décision politiques [8].

Comme les propriétaires d'ordinateurs peuvent choisir les projets auxquels ils participent, le contrôle des fonds alloués à la science passera progressivement des agences gouvernementales (avec la myriade de facteurs qui influence leur politique de décision) vers le grand public. Ceci comporte des risques: Le public peut être trompé plus facilement qu'un comité d'experts. Mais cela permet aussi la mise en place d'un moyen très direct et démocratique de décider de la politique de recherche.

Si un scientifique a une idée nécessitant du calcul, mais qu'il découvre que ça pourrait lui prendre des milliers d'années de temps de calcul, la réaction normale sera de jeter cette idée à la corbeille. Mais le calcul public rend cette idée possible: SETI@home a utilisé 1.5 millions d'années de temps de calcul. Les scientifiques peuvent maintenant reprendre et reconsidérer ces idées qui avaient été écartées.

REFERENCES

[1] D. P. Anderson, J. Cobb, E. Korpela, M. Lebofsky, and D. Werthimer. SETI@home: An experiment in public-resource computing. Communications of the ACM, Nov. 2002, Vol. 45 No. 11, pp. 56-61. See also http://setiathome.berkeley.edu

[2] http://www.slashdot.org

[3] http://climateprediction.net

[4] http://folding.stanford.edu

[5] http://www.globalgridforum.com/

[6] R. Motwani and P. Raghavan. Randomized Algorithms. Cambridge University Press, 1995.

[7] C. Sagan. The Demon-Haunted World: Science As a Candle in the Dark. Random House, 1996.

[8] R. Forsythe, T. A. Rietz, and T. W. Ross. Wishes, expectations, and actions: A survey on price formation in election stock markets. Journal of Economic Behavior and Organization, 39:83--110, 1999.