Quand le calcul intensif s'invite à la maison

Frédéric Cuvelier
23 juillet 2008 à 17h35
0
00C8000001484524-photo-set-home.jpg
Depuis que la science utilise l'informatique dans des domaines comme la physique des particules, la biologie moléculaire ou encore l'astronomie, les chercheurs ont un besoin toujours plus important de puissance de calcul. Parallèlement, le nombre d'ordinateurs dans le monde ne cesse de croître, tout comme la vitesse des réseaux qui parcourent les continents. Partant de ce constat, quelques chercheurs et informaticiens se sont interrogés sur l'énorme potentiel que représente le parc informatique planétaire face à des problèmes scientifiques toujours plus complexes. En effet, cette solution de calcul externalisée se veut à la fois d'une puissance inégalée et d'un coût de production relativement faible en comparaison des supercalculateurs et autres clusters utilisés dans les universités.

Alors que s'est tenue la semaine dernière en Hongrie la sixième école d'été sur le calcul en grille, peu de gens savent exactement de quoi il en retourne. Ces problèmes très pointus n'intéressent qu'une poignée d'individus surdiplômés, pourriez-vous même penser. Pourtant, plusieurs d'entre vous (ou plutôt vos ordinateurs) pratiquent ce genre de calculs tous les jours. Les Seti@Home, Folding@Home et autre FightAids@Home sont en effet quelques-uns des exemples les plus connus de Grid Computing.

Le calcul distribué, partie du calcul intensif



Qu'est-ce exactement que le calcul en grille ? C'est une partie de ce que l'on appelle le calcul intensif, qui est pratiqué par les scientifiques et quelques industries privées pour venir à bout de problèmes qui nécessitent de très grandes ressources informatiques, tant au niveau du temps de calcul que de la capacité de stockage.

012C000000323071-photo-cea-tera-10-supercalculateur.jpg
Tera 10, le supercalculateur du CEA


Traditionnellement, les recherches utilisant du calcul intensif s'effectuent sur des supercalculateurs ou des grappes (ou clusters) de dizaines, voire de centaines d'ordinateurs uniquement dédiés à ces opérations. Le problème de ces systèmes est leur coût, tout d'abord, mais aussi leur puissance toute relative comparée au nombre de personnes les utilisant, chacune d'entre elles proposant à la machine des calculs qui peuvent durer de plusieurs heures à plusieurs semaines. Conséquence : la plupart du temps, la file d'attente est longue et ralentit considérablement la progression des scientifiques.

Une chaîne d'éléments distants



0078000001484556-photo-chaine.jpg
Il faut savoir que parmi les calculs scientifiques, nombre d'entre eux sont parallélisables, ce qui signifie qu'un gros problème peut être découpé en une multitude de sous problèmes indépendants les uns des autres. Compte tenu de ce paramètre a germé une autre possibilité d'effectuer les opérations : le calcul en grille, qui englobe plusieurs notions, dont le calcul distribué. Le principe est simple, faire travailler les ordinateurs de volontaires dont le processeur est rarement occupé au maximum de ses possibilités.

Plusieurs éléments composent cette chaîne de calcul :
  • la source des informations en est le premier maillon. Ces sources peuvent être de formes multiples : télescopes, détecteurs de particules, ordinateurs (pour les simulations numériques)... ;
  • ces données transitent ensuite par le cerveau qui les centralise, les distribue et optimise le système afin de mieux répartir la charge selon les disponibilités de chacun. Ce cerveau est appelé le « courtier en ressources » et nous reviendrons sur son rôle par la suite tant il est important ;
  • toutes ces informations passent par le réseau, élément à part entière de la chaine, et dont les propriétés (notamment de vitesse) comptent pour beaucoup dans la progression des calculs ;
  • enfin une application installée par vos soins sur votre ordinateur ferme cette chaîne. Son rôle est d'envoyer un message pour spécifier qu'il est prêt à calculer, de réceptionner les informations envoyées par le serveur, d'effectuer le calcul demandé et bien sûr d'expédier en retour les résultats obtenus.
En résumé, la part de travail fournie par l'internaute volontaire ne réside que dans l'installation d'un logiciel client qui va ensuite utiliser les ressources de sa machine lorsque celle-ci sera inutilisée (en veille, typiquement).

Qui est le cerveau de l'opération ?



Le travail du courtier en ressources, lui, est autrement plus complexe. Il va en effet devoir constamment envoyer et recevoir des données vers ou en provenance de n'importe quel endroit du monde, repartir les calculs selon les ressources de calcul et de stockage disponibles (et pour cela, établir un traitement statistique de celles-ci). C'est autour de lui que s'organise toute la chaîne. Le travail de répartition des calculs, notamment, est le plus délicat : en effet, il est plus délicat de travailler sur une grille externalisée que sur une grappe de nœuds à cause de l'hétérogénéité des machines. L'optimisation de la tête pensante de ce réseau de calcul est donc l'un des domaines de recherche les plus prisés du moment.

Le fonctionnement client-serveur n'est cependant pas le seul à exister dans le calcul distribué qui s'est également inspiré de ce qui existait dans des domaines d'échange de données en général. Ainsi la technologie peer-to-peer peut également s'appliquer à ce style de réseau.

Quid de la sécurité ?



0078000001473574-photo-dossier-s-cu-s-curit-informatique.jpg
Dès que l'on parle réseau, il faut évidemment parler sécurité. Et le problème est double ici. En effet, les données qui transitent entre le serveur et votre terminal sont d'une importance capitale pour les chercheurs qui les utilisent au jour le jour. S'il advenait qu'elles soient corrompues ou perdues, les efforts des uns et des autres seraient réduits à néant.

D'un tout autre point de vue, qu'en est-il de la sécurité des bénévoles qui acceptent qu'un flux important de données entre et sorte chaque jour de leur machine ? En avril 2003, le programme Seti@Home avait souffert d'une faille de sécurité relativement importante. La question de la sécurité est donc un paramètre essentiel du calcul distribué dont les concepteurs des logiciels « courtier en ressources » doivent impérativement tenir compte.
Modifié le 01/06/2018 à 15h36
0 réponses
0 utilisateurs
Suivre la discussion

Les actualités récentes les plus commentées

Sommée de cesser de diffuser les chaines d'Altice, Free opérerait la coupure dès vendredi
Les poids-lourds électriques eCascadia de Daimler prêts à prendre la route
Des scientifiques ont découvert le plus grand trou noir jamais observé à ce jour
Déjà plus de 45 000 précommandes pour la Mini Cooper SE électrique
La PS5 et la Scarlett pourraient offrir des graphismes photoréalistes selon le boss de Take-Two
Piratées, les enceintes connectées pourraient être une menace pour leurs utilisateurs
L'Angleterre envisage l'interdiction du smartphone en volant, même en main libre
L'Audi e-tron devient la voiture électrique la plus sûre du monde
Une étude montre que les cyclistes
Un restaurant de burgers cuisinés par des robots ? Une start-up l’a fait

Notre charte communautaire

1. Participez aux discussions

Nous encourageons chacun à exprimer ses idées sur les sujets qui l'intéressent, et à faire profiter l'ensemble de la communauté de son expertise sur un sujet particulier.

2. Partagez vos connaissances

Que vous soyez expert ou amateur passionné, partagez vos connaissances aux autres membres de la communauté pour enrichir le niveau d'expertise des articles.

3. Échangez vos idées

Donnez votre opinion en étayant votre propos et soyez ouverts aux idées des autres membres de la communauté, même si elles sont radicalement différentes des vôtres.

4. Faites preuve de tolérance

Qu'il s'agisse de rédacteurs professionnels ou amateurs, de lecteurs experts ou passionnés, vous devez faire preuve de tolérance et vous placer dans une démarche d'entraide.

5. Restez courtois

Particulièrement lorsque vous exprimez votre désaccord, critiquez les idées, pas les personnes. Évitez à tout prix les insultes, les attaques et autres jugements sur la forme des messages.

6. Publiez des messages utiles

Chaque participation a vocation à enrichir la discussion, aussi les partages d'humeurs personnelles ne doivent pas venir gêner le fil des échanges.

7. Soignez votre écriture

Utilisez la ponctuation, prohibez le langage SMS et les majuscules, relisez-vous afin de corriger un peu les fautes de frappe et de français : trop de fautes n’engagent ni à lire le message, ni à répondre à une question.

8. Respectez le cadre légal

Ne publiez pas de contenus irrespectueux, racistes, homophobes, obscènes ou faisant l'apologie de courants radicaux, qu'ils soient politiques ou religieux. N'utilisez pas plusieurs comptes utilisateurs.

9. Ne faites pas de promotion

Ne profitez pas d'une discussion pour faire la publicité d'un produit, d'un service ou même de votre site web personnel.

10. Ne plagiez pas

Exprimez uniquement vos opinions ou partagez des idées en citant vos sources.

scroll top