BOINC pour les nuls

Si l’on s’y intéresse de prêt, l’univers de Boinc et du calcul partagé peut se révéler extrêmement vaste et parfois complexe. Les termes techniques et les mécanismes parfois obscurs rebutent certains, et font se poser des questions à d’autres. Les questions qui m’ont été posées depuis la création de l’équipe Star Wars [FR] (voila deux ans, bientôt) m’amènent à rédiger ce petit dossier « Boinc pour les nuls », afin de tenter d’éclairer un peu la lanterne de chacun.

Avant de démarrer, une petite précision : ce qui est suit est volontairement minimaliste et il ne s’agit en aucun cas de définitions se voulant précises. J’ai essayé dans la mesure du possible de mettre des liens qui vous permettront d’assouvir votre soif de connaissance sur certains sujets parfois complexes, mais gardez à l’esprit qu’il s’agit d’un guide très simple. Il se pourrait même qu’il contienne des erreurs, aussi n’hésitez pas à me signaler tout problème.

Bonne lecture.

Application optimisée (optimized application) : il existe principalement trois sortes d’applications dans Boinc : le logiciel Boinc lui-même, les applications serveurs des différents projets (chaque projet repose sur ses propres serveurs et son propre programme de traitement), et les applications optimisées. Ces dernières, le plus souvent à l’initiative de personnes n’ayant rien à voir avec les gestionnaires de projets, se basent sur le code de l’application serveur (librement distribué), et font l’objet de diverses optimisations. Il faut savoir que, dans certains cas, les responsables de projet sont davantages scientifiques qu’informaticiens, et qu’il est parfois très simple pour des personnes compétentes d’optimiser le code d’un projet Boinc pour que les unités de calculs soient faites plus rapidement. Les applications optimisées les plus connues concernent les projets [email protected] et [email protected] (ce dernier ayant même une optimisation pour les cartes graphiques ATI, ce qui fait de MW le premier projet à fonctionner sur ces cartes);

At home (@home) : ce fameux « @home », qui signifie « à la maison » ou « depuis chez vous », comme vous voulez, se retrouve sur la plupart des projets Boinc depuis que le premier d’entre eux, [email protected], a adopté cette façon de faire. Cela montre très simplement que chacun peut, de chez soi et sans effort, participer activement à un projet : [email protected], [email protected], etc.

Berkeley : l’université de Berkeley est à l’origine du développement du logiciel BOINC. Vous trouverez davantage d’informations sur cette page Wikipedia.

BOINC (Berkeley Open Infrastructure for Network Computing) : il s’agit là du logiciel développé par l’Université de Berkeley et permettant à divers projets d’être calculés par n’importe quel ordinateur dans le monde. Vous pouvez consulter cette page Wikipedia ou le site web officiel de Boinc.

Boinc – Client : une autre façon de désigner le programme BOINC.

Boinc – Manager : l’interface utilisateur graphique du programme BOINC. Elle vous permet de vous rattacher à des projets, de consulter les logs, de voir les calculs en cours, et de régler divers paramètres.

Bonic / bionic / bionc : ces erreurs (qui sont loin d’être toujours des erreurs de frappe) reviennent souvent dans les conversations traitant de BOINC. Ce sigle pourtant très simple a beaucoup de mal à être assimilé, on dirait ^^

Calcul Distribué / Calcul en grille (grid computing, distributed computing, network computing) : de façon très sommaire, le calcul distribué / en grille / partagé consiste à fragmenter un calcul important en X opérations plus rapides, de façon à répartir ce calcul sur plusieurs machines, lesquelles vont donc pouvoir travailler en parallèle et de façon autonome. Ces petits calculs sont ensuite regroupés sur un serveur qui va « recoller les morceaux ». Concrètement, dans le cas de Boinc, cela permet à tout un chacun d’aider la communauté scientifique avec un ordinateur personnel de puissance moyenne, là où il faudrait théoriquement un supercalculateur. Vous trouverez plus d’informations sur cette page Wikipedia.

Climate Prediction (CPDN) : Figurant parmi les projets les plus connus, CPDN dépend de l’université d’Oxford en Angleterre, et vise à étudier et cerner le climat. Cette étude des modèles climatiques vise à améliorer notre compréhension de notre environnement. Vous pouvez consulter la page Wikipedia de ce projet pour plus d’informations. Dans la communauté Boinc, le projet CPDN est réputé pour la très grande taille de ses unités de travail, largement supérieures à la moyenne.

CPU (Central Processing Unit) : le processeur est le coeur de votre ordinateur, c’es lui qui effectue les principaux calculs. De sa puissance dépend directement votre contribution à Boinc. Les plus curieux et les plus courageux pourront consulter cet énorme article Wikipédia.

Credit : le crédit symbolise dans les projets Boinc la quantité de travail que votre ordinateur effectue. Il s’agit en quelque sorte d’une récompense virtuelle, qui permet à chaque membre et chaque équipe de se positionner par rapport aux autres. Un moyen comme un autre de se mettre en compétition de manière amicale, ou tout simplement de quantifier sa participation à un projet.

CUDA / Brook+ / OpenCL : Le premier pour les cartes Nvidia, le deuxième pour les cartes ATI, et le troisième … pour tout le monde ^^ Il s’agit là de jeux d’instructions permettant à des logiciels d’exploiter la puissance des cartes graphiques récentes (GPU). Ces cartes sont en effet dotées d’une très grande puissance de calcul, et les projets Boinc qui se mettent à cette technologie bénéficient d’un apport de calcul conséquent.

Cycles : ce terme que l’on retrouve sur certains sites liés à Boinc fait référence aux cycles d’horloge, qui sont des unités de temps d’un ordinateur. Une instruction fait au minimum un cycle d’horloge. Le nombre de cycle dépend de la fréquence de votre ordinateur : un processeur à 900 MHz peut effectuer par exemple 900 millions de cycles d’horloge par seconde.

Equipe (Team) : sur chaque projet, un membre peut créer une équipe, qui lui permettra de réunir d’autres personnes et de se mesurer aux autres équipes – en toute amitié bien sûr ^^ Il existe sur les projets Boinc une équipe « Star Wars [FR] » pour le World Community Grid, ClimatePrediction.net, GPUGRID, [email protected] et [email protected], principalement. Chaque personne pouvant participer sur plusieurs projets en parallèle, il est évidemment possible de faire partie d’une équipe différente sur chaque projet.

[email protected] : [email protected], qui n’a rien à voir avec Boinc, est un autre système de calcul partagé, à visée médicale, fonctionnant globalement sur le même principe : des ordinateurs personnels effectuant des calculs de façon distribuée.

GPU (Graphics Processing Unit) : il s’agit là des microprocesseurs que l’on retrouve sur les cartes graphiques, et dont la puissance s’est grandementa accrue ces dernières années; très spécialisés, les GPU s’avèrent par définition moins polyvalents que les CPU, mais leur puissance brute leur est largement supérieure dans certains cas. Les quelques projets exploitant le GPU (Milkyway pour les ATI, GPUGRID et [email protected] pour les Nvidia) ont vu leur puissance de calcul exploser ces derniers temps…

Manager de Compte Utilisateur (user account manager) : si vous possédez un grand nombre d’ordinateur, un manager de compte vous permettra de tout gérer d’un seul poste, sans avoir à tout configurer séparément. Très utile pour gagner du temps, ce genre de programme ne devient nécessaire qu’au bout d’un certain nombre de machines, qu’il est assez rare de posséder en général, mais c’est tout de même bien utile. Le plus connu est BAM!

NASA : l’agence spatiale américaine est souvent citée mais n’a rien à voir avec les projets Boinc, pas même [email protected]

Projets Boinc (Boinc Projects) : Boinc n’est qu’un logiciel, une coquille vide que l’on remplit avec des projets d’origine et aux buts divers. Il existe une importante quantité de projets BOINC, certains médicaux, d’autres écologiques, d’autres mathématiques. La plupart n’ont aucun but commercial et leurs résultats sont distribués à la communauté scientifique mondiale. Le projet principal de l’équipe Star Wars [FR] est le World Community Grid, qui a la particularité de regrouper des « sous-projets » essentiellement à vocation médicale.

SETI (Search for Extra-Terrestrial Intelligence) : le SETI est un projet américain visant à étudier les signaux que pourraient émettre des civilisations extraterrestres. Le sujet est beaucoup trop vaste pour être discuté ici, mais SETI possède la particularité d’être le plus ancien projet BOINC (et le plus connu, certainement). Son utilité pratique pourra en faire sourire certains, mais c’est un projet comme un autre…

Statistiques / Stats : pour les amateurs de chiffres, il existe quantité de sites web indépendants proposant des statistiques sur les utilisateurs, les équipes, les projets, etc. Vous trouverez sur ce blog une petite compilation de statistiques pour l’équipe Star Wars [FR].

Unité de Travail (workunit) : ce terme désigne chaque portion de calcul que votre ordinateur reçoit, calcule, et renvoit au serveur central du projet. Les « UT » ou « WU » sont visibles dans le manager Boinc, sur l’onglet « Tâches » (Tasks). Chaque unité de travail possède une date limite d’envoi, un temps de calcul plus ou moins variable, un identifiant, etc. Sur la plupart des projets, vous disposez d’un compte vous permettant de voir ces unités en détail, combien de temps elles ont duré, combien de crédits elles vous ont rapporté, etc.

Voila, cette petite (longue ? ^^) présentation de l’univers de Boinc est terminée. Si vous avez des questions, ou si vous avez noté des imprécisions, n’hésitez pas à me signaler tout ça, après tout l’erreur est humaine.

Laisser un commentaire