Berkeley Open Infrastructure for Network Computing

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Berkeley Open Infrastructure for Network Computing (BOINC)
Logo
Logo

BOINC Manager sous Debian
BOINC Manager sous Debian

Développeur Dr. David P. Anderson[1]
Première version 2002
Dernière version 7.6.9 () [+/-]
Version avancée 7.1.1 () [+/-]
Écrit en C++
Environnement Multiplate-forme
Langue Multilingue
Type Calcul distribué
Licence GNU LGPL
Site web boinc.berkeley.edu

BOINC est l'acronyme de Berkeley Open Infrastructure for Network Computing (Infrastructure non propriétaire de Berkeley dédiée au calcul en réseau). C'est une plate-forme de calcul distribué qui permet de gérer des projets de calcul sur la base du volontariat. Développée à l'origine pour le projet de recherche d'intelligence extraterrestre SETI@home par l'université de Californie à Berkeley, elle a été généralisée pour de nombreuses autres applications scientifiques. Le but de BOINC est de mettre à disposition des chercheurs la puissance de calcul de nombreux ordinateurs personnels dans le monde entier.

Pour l'utilisateur final, BOINC se présente sous la forme d'une application à installer sur son ordinateur. Cette application s'exécute (selon paramétrage) lorsque l'ordinateur est peu ou pas utilisé. Le temps de calcul ainsi récupéré est mis à disposition d'un des projets.

BOINC a une puissance totale moyenne de calcul d'environ 11,16 PFLOPS repartie sur environ 240 000 ordinateurs actif en début 2016 (pour comparaison, le supercalculateur le plus puissant début 2016 est le Tiane-2, hébergé en Chine, qui atteint une puissance de 33 860 TFLOPS).

Description[modifier | modifier le code]

Total de la puissance de calcul des 500 meilleurs supercalculateurs mondiaux de 1993 à 2008. Source : TOP500.

BOINC est une plate-forme de calcul partagé à laquelle tout le monde peut connecter son ordinateur. C'est donc un programme qui permet de faire participer des volontaires à des projets scientifiques dans différents domaines tels que la médecine, l'astronomie, la physique ou les mathématiques.

En faisant fonctionner BOINC, ces volontaires apportent une partie de la puissance de calcul de leur ordinateur personnel à des projets scientifiques qui ont parfois d'importants besoins sans disposer des moyens financiers qui leur permettraient d'utiliser un supercalculateur.

BOINC a pour rôle de gérer les programmes de calcul partagé présents un ordinateur. Elle demande très peu de puissance de calcul pour elle-même, et ne se sert du processeur que lorsqu'il n'est pas utilisé par d'autres applications et ne gêne donc pas l'utilisateur. Il n'est pas non plus nécessaire d'allumer son ordinateur en permanence.

Les fonctionnalités :

  • mise en cache de plusieurs unités de calcul permet à l'ordinateur de continuer à calculer sans être connecté à internet ;
  • téléchargement de nouveaux programmes et des mises à jour ;
  • participation simultanée à plusieurs projets ;
  • gestion de plusieurs ordinateurs clients avec une seule interface (BOINC Manager).

BOINC propose des systèmes de statistiques en fonction du calcul effectué. Ainsi 1 point sur un projet vaut 1 point sur un autre projet. Cela permet de faire des statistiques globales portant sur plusieurs projets et permet une compétition motivante entre les équipes, les pays. D'après la page des crédits généraux, il faut 8,9 mois pour un doublement des points au rythme du 24 mai au 22 juillet 2009. En avril 2013, la puissance de calcul est de 9,4 PFLOPS pour 356 988 ordinateurs actifs soit 26,34 GFLOPS par ordinateur[2].

Puissance de calcul[modifier | modifier le code]

Le principe de BOINC est de fonctionner sur des ordinateurs possédant des caractéristiques différentes les uns des autres, et sur un nombre de machines qui n'est pas constant dans le temps. C'est pourquoi la puissance de calcul annoncée sur le site officiel est une moyenne calculée sur les dernières 24 heures. La puissance de calcul disponible est donc variable et imprévisible.

Logiciel[modifier | modifier le code]

BOINC est un logiciel libre, sous la licence publique générale limitée GNU : chacun peut l'utiliser et le modifier pour ses propres besoins.

BOINC dispose d'un programme pour plusieurs plates-formes, ce qui permet de toucher un plus large public (Windows, GNU/Linux, Mac OS X, FreeBSD, Solaris entre autres).

Architecture[modifier | modifier le code]

Principe de fonctionnement[modifier | modifier le code]

Protocole réseau

La plate-forme BOINC suit un modèle simple : chaque projet s'étend sur un serveur central qui exécute une application Master. Les applications sont réparties sur des milliers de petites tâches qui sont envoyées à des machines réparties sur l'Internet, où ils exécutent des applications de type travailleurs. Il n'y a pas de communication entre les travailleurs. Toutes les communications doivent être du travailleur au Maître, afin de permettre la traversée de NAT et pare-feu. Les applications BOINC sont donc limitées au modèle Master/worker, avec un serveur central chargé de distribuer le travail aux clients BOINC. BOINC suit un protocole de réseau simple, qui demande aux clients d'initier toutes les communications (problèmes de NAT/pare-feu) et de communiquer avec le serveur à chaque fois qu'un client demande plus de travail. Chaque fois qu'un client est inactif et décide d'exécuter plus de travail, il doit contacter le serveur principal trois fois.

Architecture système[modifier | modifier le code]

Il existe deux interfaces entre le serveur et chaque client: l'ordonnanceur et le serveur de données. Tous les objets (composants BOINC) qui ont une couleur bleu-gris font partie de la suite logicielle de l'ensemble du système BOINC. Tous les objets (Composants spécifiques BOINC) couleur orange font partie du projet qui est hébergé sur le système BOINC. Le système BOINC se compose de matériel et de logiciel complexes qui sont destinés à permettre une organisation et à effectuer le calcul distribué. Le système comporte deux couches primaires:

  • Côté serveur
  • Côté client
    • Matériel
      • Hôte des Participants
    • Logiciel
      • BOINC Manager (permettant de paramétrer le comportement du deamon. Interface graphique utilisant l'API WxWidgets)
      • BOINC Daemon (programme sans interface)
      • Science Application

Les projets[modifier | modifier le code]

Article détaillé : Liste des projets BOINC.

Les domaines scientifiques visés par les projets BOINC sont :

En octobre 2012, le projet PrimeGrid représente 17 % des calculs effectués et 12 % de la puissance actuelle de BOINC (le projet a une puissance moyenne de 2300 TFLOPS). Le deuxième projet le plus populaire est SETI@home avec 14 % des calculs effectués (puissance moyenne de 1500 TFLOPS). Vient ensuite MilkyWay@Home avec 13 % des calculs effectués (puissance moyenne de 1400 TFLOPS)[3]. BOINC regroupe 71 projets actifs[4].

Cliquez sur une vignette pour l’agrandir

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]

Sur les autres projets Wikimedia :

Notes et références[modifier | modifier le code]