Archive

Archives pour 03/2009

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 SETI@Home et Milkyway@Home (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, SETI@home, 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 : AfricanClimate@Home, FightAids@Home, 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, Milkywa@Home et SETI@Home, 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.

Folding@Home : F@H, 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 SETI@Home 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 SETI@home.

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.

Boinc 6.6.20

31/03/2009 Comments off

Le site de Berkeley vient de mettre en place des liens pour télécharger la version 6.6.20.

Mac
boinc_6.6.20_universal-apple-darwin.zip (1.1 Mo)
boinc_6.6.20_macOSX_SymbolTables.zip (5.5 Mo)
boinc_6.6.20_macOSX_universal.zip (5.9 Mo)

PC – Linux
boinc_6.6.20_x86_64-pc-linux-gnu.sh (3.9 Mo)
boinc_6.6.20_i686-pc-linux-gnu.sh (3.7 Mo)
boinc_compat_6.6.20_i686-pc-linux-gnu.sh (1.1 Mo)

PC – Windows
boinc_6.6.20_windows_x86_64.exe (64 bits, 6.9 Mo)
boinc_6.6.20_windows_intelx86.exe (32 bits, 6.4 Mo)

Change Log:
- MGR: Remove erroneous call of locale in main thread
- manager: display versions as x.xx
- manager: fix message
- client: typo in work fetch code; may cause minor errors

Categories: BOINC Tags:

Star Wars [FR] : un record sur le World Community Grid

28/03/2009 Comments off

La journée du 28 marque un nouveau pallier pour l’équipe Star Wars [FR], puisque c’est la première fois depuis son existence que le chiffre de 100.000 points WCG a été atteint (du coup le graphique a changé d’échelle visuelle, c’est assez agréable à voir ^^).

Pour information, les points WCG sont calculés différemment des points BOINC, il faut diviser par 7 pour obtenir le chiffre « réel » (l’échelle BOINC étant celle qui est utilisée par tous les projets). Notre équipe a donc marqué dans la journée d’hier environ 15.000 points sur ce projet.

Bravo à tous ;-)

Categories: Equipe Star Wars [FR] Tags:

Boinc 6.6.18 & 6.6.19

28/03/2009 Comments off

Deux nouvelles versions de Boinc sortent à peu près en même temps : la 6.6.18 pour PC et la 6.6.19 pour Mac.

6.6.19 (Mac)

boinc_6.6.19_universal-apple-darwin.zip (1.1 Mo)
boinc_6.6.19_macOSX_universal.zip (5.9 Mo)
boinc_6.6.19_macOSX_SymbolTables.zip (5.5 Mo)

Pas de changelog pour cette version, pour le moment…

6.6.18 (PC Windows ou Linux)

boinc_compat_6.6.18_i686-pc-linux-gnu.sh (1.1 Mo)
boinc_6.6.18_windows_x86_64.exe (64 bits) (6.9 Mo)
boinc_6.6.18_windows_intelx86.exe (32 bits) (6.4 Mo)

Voir la liste des modifications de cette version.
N’oubliez pas qu’il s’agit dans les deux cas de versions de développement, à utiliser uniquement si vous êtes familiers de Boinc pour gérer d’éventuels problèmes.

Categories: BOINC Tags: ,

Milkyway@Home : vers une meilleure gestion du GPU

26/03/2009 Comments off

Depuis l’introduction d’une application optimisée permettant d’utiliser les cartes graphiques ATI, le projet Milkyway@Home connait un fort accroissement de la capacité de calcul, mais les utilisateurs de cette application optimisée (dont je fais partie) ont tous plus ou moins les mêmes problèmes de disponibilité d’unités de travail.

Ce problème devrait être prochainement être résolu si l’on en croit cette news parue sur le site du projet Milkyway.

Milkyway devrait en effet prochainement être scindé en deux applications distinctes au niveau du serveur : l’une pour les CPU, l’autre pour les GPU. En effet, pour le moment, l’application optimisée accélère les calculs mais ces derniers restent pour le moment assimilés à des calculs classiques. Théoriquement, la future modification devrait permettre aux utilisateurs de GPU de piocher dans un pool spécial, ce qui devrait avoir pour effet de fournir des unités de travail en permanence, et de mettre fin à la pénurie chronique que l’on connaît depuis quelques semaines.

Autre bonne nouvelle, pour les possesseurs de cartes graphiques Nvidia cette fois : la même news indique qu’une version CUDA sortira prochainement (elle est annoncée depuis quelques temps déjà, mais les choses devraient prochainement s’accélérer).

500.000 points sur GPUgrid

24/03/2009 Comments off

Premier projet BOINC à utiliser les cartes graphiques Nvidia, GPUgrid ne compte qu’un seul utilisateur de l’équipe Star Wars [FR], en l’occurence MAtos_22, membre habituel de l’équipe Clubic. Merci à lui de représenter l’équipe Star Wars [FR] sur ce projet médical.

Si vous désirez rejoindre le projet GPUgrid, vous devez posséder une carte graphique de marque Nvidia datant de moins de 2-3 ans environ. Les cartes compatibles sont nombreuses, la plus célèbre étant la GeForce 8800 GT. D’autres cartes comme les GTX ou les 9800 peuvent également être utilisées, et dans une moindre mesure les 8600 GT.

Voici pour l’occasion une petite vidéo présentant l’installation de GPUgrid sur votre ordinateur. Cela se déroule comme n’importe quel projet Boinc.

600.000 crédits sur Milkyway@Home

22/03/2009 Comments off

L’équipe Star Wars [FR] vient d’atteindre le seuil des 600.000 points sur le projet d’astronomie Milkyway@home.

Un score atteint très rapidement grâce à une application optimisée pour les cartes graphiques de marque ATI. Une seule carte graphique Radeon HD 4850 a en effet suffit pour atteindre ce score dans des temps records. J’ai en effet testé cette application depuis sa sortie, très récemment, et pour vous démontrer le potentiel du calcul GPU (cartes graphiques), imaginez que dans les meilleurs jours j’ai marqué environ 4 fois plus de points que toute l’équipe réunie sur le World Community Grid !

Le projet Milkyway@Home est le seul pour le moment à utiliser le potentiel des cartes graphiques de marque ATI, et ces calculs viennent s’ajouter à ceux que l’ordinateur peut faire de façon classique sur d’autres projets. C’est la raison pour laquelle je calcule ce projet, d’habitude je suis plus intéressé par les projets médicaux comme vous le savez peut-être. Mais nous avons ici l’occasion de contribuer de façon beaucoup plus efficace à un projet BOINC, et d’encourager les autres projets à se lancer dans le calcul GPU (Nvidia ou ATI), en démontrant la puissance des cartes graphiques. Sachez en effet que depuis le lancement de cette application optimisée ATI, le projet Milkyway@Home a vu sa puissance multipliée par deux je crois.

C’est pourquoi, si vous possédez une carte graphique assez récente (achetée depuis moins de deux ans, grosso modo), qu’elle soit de marque Nvidia ou ATI, je vous invite très vivement à vous lancer dans le calcul GPU. Idéalement, si vous avez une carte graphique Nvidia (8800 GT, 9800, gamme GTX, etc.), le projet GPUgrid vous intéressera (médical). Si vous possédez une carte ATI, point de salut, vous devez vous lancer sur Milkyway@Home (et installer l’optimisation se trouvant sur le site zslip.com).

N’hésitez pas à poster un commentaire ou à me contacter par e-mail si vous souhaitez davantage d’informations, ou une aide pour vous lancer dans le calcul GPU. Je vous aiderai dans la mesure de mes modestes connaissances sur le sujet ^^

World Community Grid – Le point sur les projets en cours

20/03/2009 Comments off

logo_fr

Help Fight Childhood Cancer
Projet médical de recherche sur le neuroblastoma, en cause dans les cancers infantiles.

FightAIDS@Home
Projet médical de recherche sur le SIDA.

Human Proteome Folding – Phase 2
Projet médical de recherche sur le protéome humain (étude des protéines).

Discovering Dengue Drugs – Together
Projet médical de recherche sur la Dengue, maladie tropicale.

Help Conquer Cancer
Projet médical de recherche sur le Cancer.

Nutritious Rice for the World
Projet écologique/scientifique de recherche sur la possibilité de créer une variété de riz plus résistante et plus nutritive à destination des régions frappées régulièrement par les famines.

The Clean Energy Project
Projet écologique de recherche sur de nouveaux matériaux pour des cellules solaires plus performantes, ainsi que des moyens de stockage de cette énergie.

Help Cure Muscular Distrophy (inactif)
Projet médical de recherche sur la distrophie musculaire (programme Décrypthon du Téléthon). Ce projet est inactif et devrait reprendre courant Avril.

Sortie de la version 6.6.17

19/03/2009 Comments off

boinc_6.6.17_universal-apple-darwin.zip (1.1 Mo)

boinc_6.6.17_macOSX_universal.zip (5.9 Mo)

boinc_6.6.17_macOSX_SymbolTables.zip (5.5 Mo)

boinc_6.6.17_windows_x86_64.exe (7.0 Mo)

boinc_6.6.17_windows_intelx86.exe (6.4 Mo)

Changes for 6.6.17
- In linux client, Added code to detect capability to run 64-bit binaries from 32-bit BOINC client, and capability to run 32-bit binaries on a 64-bit linux system.
- MGR: RPCThread::KillRPCThread() defers to RPC thread before testing if thread has exited on its own
- client: consider fetching work from overworked projects if resource is saturated for < work_buf_min() (rather than saturated for 0).
So now the only significance of "overworked" is that we won't ask overworked projects for work if resource is saturated more than work_buf_min() but less than work_buf_total()
- client: in RR simulation, use app_version.flops instead of host_info.fpops as the FLOPS estimate for non-GPU apps.

Categories: BOINC Tags: ,

Sortie de la version 6.6.16

18/03/2009 Comments off

boinc_6.6.16_universal-apple-darwin.zip (1.1 Mo)

boinc_6.6.16_macOSX_universal.zip (5.9 Mo)

boinc_6.6.16_macOSX_SymbolTables.zip (5.5 Mo)

boinc_6.6.16_windows_x86_64.exe (7.0 Mo)

boinc_6.6.16_windows_intelx86.exe (6.4 Mo)

Changes for 6.6.16
- client: backoff overrides project-requested scheduler RPC. Otherwise, if scheduler is down, we'll retry infinitely every 10 secs
- client: remove auto_update.poll() (not used)
- Manager: show elapsed time instead of CPU time in Task tab. CPU time is visible in task Properties.
- Manager: in task Properties, show final CPU and elapsed times if job is finished
- client: honor backoff for account-manager-requested scheduler RPCs
- client: keep track final elapsed time for results
- GUI RPC: report final elapsed time
- manager: just call it Elapsed
- MGR: Simplify the fixes for saving and restoring window sizes and other settings
- MGR: Handle EVT_END_SESSION event to call SaveState() on Windows logout or shutdown
- MGR: Add the basic infrastructure for the up and coming news tab in the advanced frame.
- MGR: Fix possible deadlock when exiting manager
- MGR: Delete RPCThread::OnExit(); add new source files to XCode Project

Categories: BOINC Tags: ,