L'autre jour je traînais sur le site du langage E, et je survolais la doc. J'apprends alors que c'est un langage conçu notamment pour gérer la programmation distribuée.
Ce serait drôlement cool si plus de programmes pouvaient être écrits dans un tel langage.
Imaginez par exemple que vous lancez l'encodage d'une vidéo, un calcul complexe pour votre thèse de doctorat, un rendu sous Blender ou que sais-je encore, et qu'en fait les calculs se fassent quelque part sur le net, par des milliers de machines choisies au hasard ou en fonction de leur disponibilité.
En gros ce serait comme si votre PC était un terminal pour un super-méga-ordinateur. Une sorte de BOINC généralisé et programmable.
Est-ce encore de la science fiction ? Je n'en suis pas sûr, et je ne serais pas étonné si ça prenne forme au cours de ce siècle.
# un sujet
Posté par Alex . Évalué à 6.
Apres un rapide coup d'oeil, le langage à l'air interessant sur pas mal de points, notamment au niveau sécu.
Par contre niveau informatique distribué, je ne vois pas trop l'apport par rapport aux solutions déjà existante pour de nombreux langages de scripts.
L'autre problématique pour les exemples que tu donnes (l'encodage vidéo et le rendu sous blender), c'est que l'envoi des données sur internet est (actuellement) bien plus long que le calcul lui même.
[^] # Re: un sujet
Posté par deuzene (site web personnel) . Évalué à 1.
Ça me semble être le principe des trojans l'informatique distribuée. Bon, bien sur, je choisi de faire du boinc.
Il faut donc être d'accord et s'inscrire, sinon c'est un ver.
Cela reste possible.
Amis ayant besoin de faire du calcul, développez un virus !
« Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. »
[^] # Re: un sujet
Posté par khivapia . Évalué à 3.
l'envoi des données (...) est (...) bien plus long que le calcul lui même
C'est d'ailleurs toute la problèmatique du calcul distribué : paralléliser correctement les sections qui le peuvent, et minimiser les échanges entre les différents nœuds de calcul pour conserver un gain de temps total malgré les transferts de données.
# Erlang
Posté par Thomas Sanchez . Évalué à 6.
L'erlang est pas mal aussi pour ca: http://www.erlang.org/
# Scepticisme, quand tu nous tiens...
Posté par Maclag . Évalué à 10.
Bon, ça se voit que je n'y crois pas trop?
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par imr . Évalué à 2.
Vous êtes également priés de NE PAS faire le rapport entre la puissance de calcul dont vous avez besoin et la consommation d'électricité que vous allez manger, sachant que comme tout le monde accède au calcul distribué en même temps, vous avez de bonnes chances de vous retrouver distribué sur une machine identique à la vôtre, temps de parcourt des données en plus.
C'est vraiment différent d'internet, ça? Ou même de l'informatique personnelle?
Le rapport entre le cout de l'énergie consommée et l'intérêt du travail effectué, ça n'a pas empêché ni l'un ni l'autre de se développer.
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par grondilu . Évalué à -2.
Faudrait que je vérifie mais j'ose espérer que les systèmes de calculs distribués sont conçus pour résister à une interruption de service pour un noeud donné, qu'il y a une certaine redondance dans les requêtes, une certaine analyse statistique des ressources disponibles, etc.
Sinon ça n'aurait aucun intérêt. Un peu comme si un fichier disparaissait d'un réseau torrent dès lors que je le supprime sur mon disque.
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par totof2000 . Évalué à 3.
Normalementt ça doit être prévu, pour ne pas recommencer depuis le début. Par contre je pense que si tu préviens le système que tu vas arrêter un noeud, il aura le temps de migrer tranquillement le process ainsi que ses données vers un autre noeud, ce qui doit prendre moins de temps que de reprendre le calcul à un point de commit donné.
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par Maclag . Évalué à 2.
Exactement.
On parle de calculs à grande échelle non?
Le but, c'est d'accéder à une plus grosse puissance à moindre coût, non?
Si la moitié de la puissance est passée à faire la moitié du calcul atomique et puis pouf! Plus rien, ordi éteint, ben on va pas réduire la bande-passante et optimiser la puissance disponible...
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par totof2000 . Évalué à 2.
Je ne comprends pas ou tu veux en venir. Peux-tu etayer STP ?
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par Maclag . Évalué à 2.
L'idée c'est d'avoir pour réseau distribué les ordinateurs du monde entier.
Je ne sais pas pour vous, mais moi j'éteins le mien la nuit, par exemple.
Maintenant, combien de temps perdrait-on dans les coupures intempestives des utilisateurs "normaux" (puisqu'on parle d'utiliser les ordinateurs de tout le monde)?
Pour que les performances soient viables, il faut minimiser le risque que le calcul "atomique" (je ne sais pas comment traduire ça: le calcul affecté à un noeud en particulier, avec les données qui vont avec) soit interrompu et perdu.
Or, le grand public (y compris nos ordis domestiques) est très loin de cette contrainte. Il faut l'imposer.
Et je repars aussi sur un autre argument: pourquoi l'ordi du voisin serait plus puissant que le mien? Le grand public utilise sa machine plutôt suivant une plage horaire fixe (comprendre: on y est tous en même temps). Donc envoyer mes calculs à mes voisins pendant qu'eux m'envoient les leurs en même temps, je ne pense pas que ça soit très cohérent...
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par grondilu . Évalué à -1.
Peut-être mais le jour et la nuit à l'échelle mondiale, c'est très relatif, hein...
Combien exactement, je ne sais pas. Beaucoup, probablement. Mais je ne vois pas pourquoi ce ne serait pas gérable.
Il ne faut pas le minimiser, il faut juste faire avec. Il n'y aucune raison d'imposer quoi que ce soit.
Ben oui, déshabiller Pierre pour habiller Paul, ça ne serait pas très malin. L'idée c'est plutôt d'aller chercher les ressources CPU là où elles sont disponibles.
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par totof2000 . Évalué à 3.
Et je repars aussi sur un autre argument: pourquoi l'ordi du voisin serait plus puissant que le mien? Le grand public utilise sa machine plutôt suivant une plage horaire fixe (comprendre: on y est tous en même temps). Donc envoyer mes calculs à mes voisins pendant qu'eux m'envoient les leurs en même temps, je ne pense pas que ça soit très cohérent...
Ben oui, déshabiller Pierre pour habiller Paul, ça ne serait pas très malin. L'idée c'est plutôt d'aller chercher les ressources CPU là où elles sont disponibles.
Les systèmes distribués gèrent ce genre de contrainte. En gros un process de calcul sera lancé dans la mesure du possible sur le noeud local, et si celui-ci ne suffit pas, on le lance ailleurs. Il y a des algorithmes prévus pour gérer ça. En gros si ta machine lance un calcul ailleurs, c'est parce que ça coute moins de temps de lancer le calcul sur une autre machine que d'attendre que ta machine soit libre de calculer. Et si ta machine lance un calcul ailleurs, il nefaut pas t'attendre à ce qu'elle accepte les calculs du voisin : elle ne pourra pas les encaisser.
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par Batchyx . Évalué à 3.
C'est pas "on doit", c'est obligatoire. Le taux de panne augmente avec le nombre de machine, c'est mathématique (1000 machines fiables à 99.99%, ça fait déjà 10% de proba pour qu'une d'elle tombe en panne). Il y aura au moins une machine ou un bidule réseau qui tombera en panne, momentanément ou définitivement.
Si ton système ne résiste pas à une quelconque panne alors c'est pas un système distribué.
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par lolop (site web personnel) . Évalué à 3.
Si, il est distribué, mais très fragile.
Sinon, le stats c'est pas mon truc, mais 99,99% de 1000 machines qui font 10% de proba qu'une machine tombe en panne, j'ai dû rater qq chose en cours (bon, y'a longtemps).
Votez les 30 juin et 7 juillet, en connaissance de cause. http://www.pointal.net/VotesDeputesRN
[^] # Re: Scepticisme, quand tu nous tiens...
Posté par Maclag . Évalué à 6.
Bon, d'abord ça n'est valable que sur une échelle de temps, donc disons que 1000 machines qui ont 99.99% de fonctionner correctement toute la durée du calcul, ça fait que chaque machine à 0.9999 de probabilité de fonctionner.
Elles doivent toutes fonctionner en même temps. Si on a deux machines, la probabilité qu'elles fonctionnent toutes les deux en même temps, c'est 0.9999*0.9999.
Si on a 1000 machines, la proba qu'elles fonctionnent toutes en même temps sans faillir, c'est 0.9999^1000=0.9048
On tombe bien sur ~10% (ou alors c'est mes probas à moi qui sont à revoir...) de probabilité qu'au moins une machine tombe en panne.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.