Folding@home
Folding@home, parfois désigné par l'abréviation FAH, est un projet de recherche médicale dont le but est de simuler le repliement des protéines dans diverses configurations de température et de pression afin de mieux comprendre ce processus, et d'en tirer des connaissances utiles qui pourraient, entre autres, permettre de développer de nouveaux médicaments, notamment contre la maladie d'Alzheimer, la drépanocytose, certains types de cancers et la maladie à coronavirus 2019. C'est un projet de calcul distribué qui fonctionne avec la puissance de calcul non utilisée des ordinateurs et, anciennement, des smartphones et des PlayStation 3 de milliers de volontaires.
Pour les articles homonymes, voir FAH.
Créateur | Vijay S. Pande |
---|---|
Développé par | Cauldron Development LLC |
Première version | |
Dernière version | 7.6.21 () |
Dépôt | github.com/FoldingAtHome |
Système d'exploitation | Microsoft Windows, macOS, GNU/Linux et FreeBSD |
Environnement | Multiplateforme |
Langues | Anglais |
Type | Calcul distribué |
Licences | Propriétaire (client), GPL (autres composants) |
Site web | (en) foldingathome.org |
Folding@home est un des systèmes les plus rapides au monde, avec une vitesse qui dépasse le seuil symbolique de l'exaFLOPS le 25 mars 2020, plus rapide que les 7 premiers superordinateurs du monde cumulés ainsi que tous les projets distribués de BOINC combinés. Toute cette puissance a permis aux chercheurs de faire des simulations d'une complexité inégalée et plusieurs milliers de fois plus longues qu'auparavant. Depuis 2001, les données de simulation ont permis de publier plus de 200 articles dans des revues scientifiques[1]. Les résultats expérimentaux concordent avec les simulations.
Le projet a été fondé, et dirigé pendant plus de 18 ans, par Vijay S. Pande, à l'université Stanford, en Californie.
Organisation
Le projet Folding@home est développé, déployé et maintenu par le Pande Lab, une structure pluridisciplinaire à but non lucratif émanant du département de chimie de l'université Stanford, ce qui est une garantie que les résultats des calculs seront accessibles aux chercheurs et autres scientifiques du monde entier[2].
Le projet est en grande partie financé par les National Institutes of Health (NIH) et la National Science Foundation (NSF) des États-Unis. Folding@home est ou a été également soutenu – financièrement et/ou techniquement – par quelques entités privées : Intel, Google (barre d'outils), Sony (PS3), ATI, Nvidia (CUDA), Apple et Dell[3].
En février 2019, Greg Bowman, désigné par Vijay Pande, prend le relais à la direction du projet, désormais basé à l'école de médecine de l'université Washington de Saint-Louis, dans le Missouri[4].
Fonctionnement
L'étude est effectuée par un moteur ou client, que chacun peut installer sur son ordinateur (sous Windows, Linux, macOS, en ligne de commande ou en mode graphique, sous forme d'un écran de veille). Ce client, va effectuer les calculs sur le CPU ou le GPU de l'ordinateur (selon la formule choisie). Le code source de ce logiciel n'est pas diffusé afin de complexifier la communication de faux résultats aux serveurs, ce qui fausserait le projet[2].
Chaque calcul occupe le processeur ou le GPU client quand il n'est pas utilisé. Cela ne donne donc lieu à aucun ralentissement de la machine. Chaque calcul dure de 4 à 200 heures environ, selon la configuration matérielle de l'ordinateur.
Le client télécharge une nouvelle unité de travail (en anglais « WU » pour work unit) de manière automatique dès qu'il a fini de calculer la précédente.
Une unité de travail définit un ensemble de paramètres pour la simulation de repliement de protéines. Les calculs eux-mêmes sont effectués par un des « cores » suivants : Tinker, Gromacs, Amber, CPMD, Sharpen, ProtoMol ou Desmond.
Types de client
Console de Linux
Voici ce qu'affiche le logiciel en mode console, sous Linux :
18:42:47:************************* Folding@home Client ************************* 18:42:47: Website: http://folding.stanford.edu/ 18:42:47: Copyright: (c) 2009-2012 Stanford University 18:42:47: Author: Joseph Coffland <joseph@cauldrondevelopment.com> 18:42:47: Args: --config /opt/fah-v7/config.xml --exec-directory=/opt/fah-v7 18:42:47: --data-directory=/opt/fah-v7 18:42:47: Config: /opt/fah-v7/config.xml 18:42:47:******************************** Build ******************************** 18:42:47: Version: 7.2.9 18:42:47: Date: Oct 3 2012 18:42:47: Time: 10:34:06 18:42:47: SVN Rev: 3578 18:42:47: Branch: fah/trunk/client 18:42:47: Compiler: GNU 4.4.7 18:42:47: Options: -std=gnu++98 -O3 -funroll-loops -mfpmath=sse -ffast-math 18:42:47: -fno-unsafe-math-optimizations -msse2 18:42:47: Platform: linux2 3.2.0-1-amd64 18:42:47: Bits: 64 18:42:47: Mode: Release 18:42:47:******************************* System ******************************** 18:42:47: CPU: Intel(R) Core(TM)2 Extreme CPU X9775 @ 3.20GHz 18:42:47: CPU ID: GenuineIntel Family 6 Model 23 Stepping 6 18:42:47: CPUs: 8 18:42:47: Memory: 11.74GiB 18:42:47:Free Memory: 9.26GiB 18:42:47: Threads: POSIX_THREADS 18:42:47: On Battery: false 18:42:47: UTC offset: 1 18:42:47: PID: 7869 18:42:47: CWD: /opt/fah-v7 18:42:47: OS: Linux 3.6.6-1-ARCH x86_64 18:42:47: OS Arch: AMD64 18:42:47: GPUs: 1 18:42:47: GPU 0: NVIDIA:1 GT200 [GeForce GTX 280] 18:42:47: CUDA: 1.3 18:42:47:CUDA Driver: 5000 18:42:47:*********************************************************************** 18:42:47:<config> 18:42:47: <!-- Folding Slot Configuration --> 18:42:47: <gpu v='true'/> 18:42:47: 18:42:47: <!-- Network --> 18:42:47: <proxy v=':8080'/> 18:42:47: 18:42:47: <!-- Remote Command Server --> 18:42:47: <command-allow v='192.168.0.1/24'/> 18:42:47: <command-allow-no-pass v='192.168.0.1/24'/> 18:42:47: 18:42:47: <!-- User Information --> 18:42:47: <passkey v='********************************'/> 18:42:47: <team v='*****'/> 18:42:47: <user v='*****'/> 18:42:47: 18:42:47: <!-- Folding Slots --> 18:42:47: <slot id='0' type='SMP'/> 18:42:47: <slot id='1' type='GPU'/> 18:42:47:</config> 18:42:47:Trying to access database… 18:42:47:Successfully acquired database lock 18:42:47:Enabled folding slot 00: READY smp:8 18:42:47:Enabled folding slot 01: READY gpu:0:"GT200 [GeForce GTX 280]" 18:42:47:WU02:FS00:Starting 18:42:47:WU02:FS00:Running FahCore: /opt/fah-v7/FAHCoreWrapper /opt/fah-v7/cores/www.stanford.edu/~pande/Linux/AMD64/Core_a4.fah/FahCore_a4 -dir 02 -suffix 01 -version 702 -lifeline 7869 -checkpoint 15 -np 8 18:42:47:WU02:FS00:Started FahCore on PID 7879 18:42:47:WU02:FS00:Core PID:7883 18:42:47:WU02:FS00:FahCore 0xa4 started 18:42:47:WU02:FS00:0xa4: 18:42:47:WU02:FS00:0xa4:*------------------------------* 18:42:47:WU02:FS00:0xa4:Folding@Home Gromacs GB Core 18:42:47:WU02:FS00:0xa4:Version 2.27 (Dec. 15, 2010) 18:42:47:WU02:FS00:0xa4: 18:42:47:WU02:FS00:0xa4:Preparing to commence simulation 18:42:47:WU02:FS00:0xa4:- Looking at optimizations… 18:42:47:WU02:FS00:0xa4:- Files status OK 18:42:47:WU02:FS00:0xa4:- Expanded 548597 → 848100 (decompressed 154.5 percent) 18:42:47:WU02:FS00:0xa4:Called DecompressByteArray: compressed_data_size=548597 data_size=848100, decompressed_data_size=848100 diff=0 18:42:47:WU02:FS00:0xa4:- Digital signature verified 18:42:47:WU02:FS00:0xa4: 18:42:47:WU02:FS00:0xa4:Project: 7647 (Run 143, Clone 0, Gen 27) 18:42:47:WU02:FS00:0xa4: 18:42:47:WU02:FS00:0xa4:Assembly optimizations on if available. 18:42:47:WU02:FS00:0xa4:Entering M.D. 18:42:53:WU02:FS00:0xa4:Using Gromacs checkpoints 18:42:53:WU02:FS00:0xa4:Resuming from checkpoint 18:42:53:WU02:FS00:0xa4:Verified 02/wudata_01.log 18:42:53:WU02:FS00:0xa4:Verified 02/wudata_01.trr 18:42:53:WU02:FS00:0xa4:Verified 02/wudata_01.xtc 18:42:53:WU02:FS00:0xa4:Verified 02/wudata_01.edr 18:42:54:WU02:FS00:0xa4:Completed 1066430 out of 2500000 steps (42%) 18:48:35:WU02:FS00:0xa4:Completed 1075000 out of 2500000 steps (43%) 19:09:02:WU02:FS00:0xa4:Completed 1100000 out of 2500000 steps (44%) 19:29:55:WU02:FS00:0xa4:Completed 1125000 out of 2500000 steps (45%) 19:39:27:FS00:Paused 19:39:27:FS00:Shutting core down 19:39:28:WU02:FS00:0xa4:Client no longer detected. Shutting down core. 19:39:28:WU02:FS00:0xa4: 19:39:28:WU02:FS00:0xa4:Folding@home Core Shutdown: CLIENT_DIED 19:39:29:WU02:FS00:FahCore returned: INTERRUPTED (102 = 0x66)
Windows, mode graphique
Sous Windows, en mode graphique, le client se présente sous la forme d'un écran de veille.
Client GPU
Folding@home fonctionne aussi avec les GPU ATI/AMD (X18xx, X19xx, HD 2xxx, HD 3xxx, HD 4xxx et HD 5xxx), et les GPU Nvidia (GeForce 8xxx, 9xxx, GT 2xx, GTX 4xx, RTX 20xx et RTX 30xx). Cela a permis, sans surprise, de décupler la puissance de calcul dédiée au projet, grâce à l'architecture massivement parallèle des puces 3D actuelles.
Windows, dans la Google Toolbar
Sous Windows dans Internet Explorer, une icône Folding@home pouvait être incluse dans la barre d'outils Google. Un menu était accessible via cette icône. Il permettait de mettre en pause le calcul, le paramétrer ou encore accéder aux statistiques.
Google a maintenant cessé d'inclure cette fonctionnalité dans sa barre d'outils.
PlayStation 3
La puissance de calcul et l'accès aux réseaux de la PlayStation 3 ont inspiré l'université Stanford qui coopère avec Sony pour que la PS3 participe à Folding@home sous le nom de cure@PS3.
Le projet a été lancé le (jour du lancement européen de la console) sous forme d'une mise à jour. Le 25 mars, plus de 30 000 PS3 avaient déjà renvoyé des unités de calcul et la puissance totale de calcul de Folding@home atteignait les 952 téraFLOPS, dont 697 pour les PS3. Folding@home a atteint le pétaFLOPS (1015 opérations par seconde) en [5].
Le , Sony annonce[6] la fin du projet sur sa console de jeux vidéo. Cet arrêt serait dû à l'écart de puissance entre les cartes graphiques apparues en 2012 et la PS3, rendant sans intérêt le calcul sur cette dernière.
Équipes de minage
Bien que les « plieurs » restent majoritairement anonymes, nombreux sont ceux à s'organiser en équipes, ce qui donne lieu à une « bataille » d'image, notamment à caractère industriel (ex. : équipes d'Amazon, Petrobras ou SAP) ou national (ex. : la Chine, la Russie ou la francophonie), voire commercial (ex. : équipes des cryptomonnaies Curecoin ou Banano)[7].
Le Curecoin
Le Curecoin est une cryptomonnaie créée par Joshua Smith[8], en activité depuis 2014. Elle est indépendante de l'équipe de recherche de Folding@home de Vijay S. Pande, quoique Joshua Smith affirme entretenir des liens officieux avec les chercheurs de Stanford[8]. Le principe en est de rétribuer non seulement des « mineurs » participant à la validation des transactions, mais aussi et surtout les contributeurs de Folding@home inscrits dans l'équipe Curecoin[9]. Sur 9 853 curecoins émis par jour, les mineurs en reçoivent collectivement 1 872 (19 %), tandis que les contributeurs en reçoivent collectivement 7 488 (76 %), chaque individu recevant sa part au prorata de sa participation à l'effort de minage ou de simulation de pliage de protéines. Les 793 (5 %) restants vont aux développeurs et aux financeurs du projet[10]. Cette répartition devrait être amenée à évoluer au profit des contributeurs de Folding@home avec le développement de la version 2 de Curecoin au cours de l'année 2018[11].
Les développeurs du Curecoin prétendent ainsi inciter les mineurs de cryptomonnaies à utiliser la puissance de calcul de leurs machines à des fins utiles à la recherche médicale, et non seulement à l'infrastructure technique d'une cryptomonnaie[12], qui n'est pas sans externalité négative, notamment en termes de consommation électrique. Le Curecoin, bien qu'il soit encore peu développé comme monnaie alternative, propose une piste pour mettre le matériel informatique des producteurs de cryptomonnaies au service de calculs ayant une utilité par ailleurs[8],[13],[14]. Sans qu'il soit possible de dire combien de nouvelles installations de clients Folding@home sont à imputer à l'émergence du Curecoin, l'équipe est aujourd'hui la première en termes d'unités de travail scientifique effectuées depuis les débuts de Folding@home, et représenterait une puissance de calcul de 47 pétaFLOPS en [11]. Elle compte 8 842 processeurs (CPU et GPU) uniques ayant effectué une unité de calcul ou plus aux mois d'avril et de [15], soit un ordre de grandeur de quelques centaines à quelques milliers d'utilisateurs. Le Curecoin s'inscrit dans un nouveau « paradigme »[16] identifié par certains auteurs dans l'histoire des cryptomonnaies : elles sont de plus en plus nombreuses à s'inscrire dans la mouvance de l'économie sociale et solidaire[17], dans une démarche parfois évoquée sous l'appellation plus spécifique de « Blockchain4Good »[16].
Contribution à la recherche lors de la pandémie de Covid-19
Dans le cadre de la pandémie de Covid-19, Folding@home annonce, le , qu'une partie de ses efforts porteront sur l'identification de cibles pour un anticorps thérapeutique contre le virus SARS-CoV-2[18],[19].
À la suite d'une mobilisation massive le projet dépasse le seuil symbolique de l'exaFLOPS le et atteint une puissance de calcul dix fois supérieure à celle d'IBM Summit, le plus puissant supercalculateur alors en service[20].
Notes et références
- (en) « Papers & Results – Folding@home », sur foldingathome.org (consulté le 5 avril 2020)
- (en) « Frequently Asked Questions (FAQ) », sur folding.stanford.edu (consulté le 25 juillet 2005)
- (en) « Partners – Folding@home », sur foldingathome.org (consulté le 5 avril 2020)
- (en) « Bowman leading international supercomputing project », sur medicine.wustl.edu, 26 février 2019 (consulté le 30 mai 2020)
- Mark Whiting, Folding@home Breaks the PetaFLOP Barrier, 20/09/07. (date de la consultation : 24/09/07)
- http://www.playstation.com/life/en/index.html
- (en) « Folding@home stats report » (consulté le 25 avril 2020)
- (en-US) « CureCoin Founder: My Cryptocurrency Can End All Disease in 100 Years | Finance Magnates », Finance Magnates | Financial and business news, (lire en ligne, consulté le )
- (en) « Team: Curecoin », sur stats.foldingathome.org
- (en-US) « How is the currency divided up? | Curecoin.net », sur curecoin.net (consulté le )
- (en-US) « Curecoin 2018 Updates and Roadmap | Curecoin.net », sur curecoin.net (consulté le )
- (en-US) « What is CureCoin? | Curecoin.net », sur curecoin.net (consulté le )
- « Énergie et pollution: "les coûts cachés du bitcoin" », LExpansion.com, (lire en ligne, consulté le )
- (en) « CureCoin: A cryptocurrency aiming to beat cancer », sur Euromoney (consulté le )
- « Team 224497's contributions to Folding@home », sur Team 224497 (consulté le )
- Richard Adams, Beth Kewell et Glenn Parry, Blockchain for Good? Digital Ledger Technology and Sustainable Development Goals (DOI 10.1007/978-3-319-67122-2_7, lire en ligne), p. 127–140
- Ariane Tichit, Pascal Lafourcade et Vincent Mazenod, « Les monnaies virtuelles décentralisées sont-elles des dispositifs d’avenir ? », Interventions économiques, no 59, (lire en ligne)
- Laurent Sacco, « Folding@home : comment participer à la recherche sur le coronavirus avec votre ordinateur ? », sur Futura (consulté le )
- (en-US) « Folding@home takes up the fight against COVID-19 / 2019-nCoV – Folding@home » (consulté le )
- Benjamin Bruel, « Folding@home dépasse l'ExaFLOP pour lutter contre le Coronavirus », sur clubic.com, (consulté le ).
Voir aussi
Articles connexes
- Calcul distribué
- Université Stanford
- Protéine et protéomique
- Rosetta@home et Proteins@home (en)
- SIMAP et BOINC
- GROMACS et TINKER
- Foldit
Liens externes
- (en) Site officiel
- (en) Folding@home sur GitHub
- Portail de la biologie cellulaire et moléculaire
- Portail de l’informatique
- Portail de la biochimie