IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

Faire travailler plusieurs PC autour d'une seul tâche


Sujet :

Windows

  1. #1
    Membre éprouvé Avatar de cs_ntd
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2006
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 598
    Points : 1 214
    Points
    1 214
    Par défaut Faire travailler plusieurs PC autour d'une seul tâche
    Bonjour à tous,

    J'utilise souvent mon pc pour des tâche assez lourdes (conversions de gros fichiers, compression, animation...), et cela durant de longs moments (1 semaine pour certaines animations par exemple )

    Et donc je voudrait savoir si il existe une solution pour que plusieurs PC connectés entre eux puisse servir à la réalisation d'une même taches...
    J'ai en effet chez moi 3 PC d'une puissance équivalente, et qui pourrait, si je peux les réunir, grandement diminuer les temps de calcul...

    Je pense surtout à un soft... car il devrait être capable de fonctionner avec des applications diverses (blender, VLC...)...

    Merci de me répondre si vous avez des idées

    The magic of Opera, La magie de l'Opera
    The mysteries of Space Opera, Les mystères de l'Opera Spatial
    Mr. Know-it-all, M. Je-Sais-Tout
    Prelude in C sharp minor, the most beautiful piano song and the best C sharp prelude ever, Prélude en do dièse mineur, le plus beau morceau de piano et le meilleur prélude au C#
    The Mesmerizing Saphir Division for Nerds, L'Hypnotisante Division Saphire pour les Nerds (HDSN)

  2. #2
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Ce que tu cherches à faire s'appelle du clustering. A priori, si les logiciels ne sont pas prévus pour fonctionner ainsi, c'est tout simplement impossible à faire.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  3. #3
    Membre éprouvé Avatar de cs_ntd
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2006
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 598
    Points : 1 214
    Points
    1 214
    Par défaut
    Boarf je suis sur que ya moyen... ^^

    nan mais bon je m'y connais pas assez donc je te fais confiance... tempis

    Merci qd même

    The magic of Opera, La magie de l'Opera
    The mysteries of Space Opera, Les mystères de l'Opera Spatial
    Mr. Know-it-all, M. Je-Sais-Tout
    Prelude in C sharp minor, the most beautiful piano song and the best C sharp prelude ever, Prélude en do dièse mineur, le plus beau morceau de piano et le meilleur prélude au C#
    The Mesmerizing Saphir Division for Nerds, L'Hypnotisante Division Saphire pour les Nerds (HDSN)

  4. #4
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Citation Envoyé par cs_ntd Voir le message
    Boarf je suis sur que ya moyen... ^^
    Et comment, si le soft n'accepte pas de faire des calculs partiels, ni de recombiner les résultats ?

    Il y a des logiciels autorisant ça, bien entendu, c'est même plutôt courant (3DS Max, pour ne citer que lui). Mais c'est bel et bien le soft lui-même qui sait le faire, tu ne peux pas distribuer un calcul "comme ça". Ce que tu demandes, c'est exactement comme si tu voulais utiliser deux PC "moyens" pour faire tourner un jeu hyper gourmand : ça ne marchera pas, parce que le jeu n'est pas conçu pour tourner sur plusieurs machines simultanément.

    Regarde dans les docs de tes logiciels en question, s'ils acceptent le calcul distribué ou pas (cherche "distributed computing" ou "clustering" dans les docs). Si le logiciel sait le faire, alors ce sera possible. Sinon, ça ne le sera pas.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  5. #5
    Membre éprouvé Avatar de cs_ntd
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2006
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 598
    Points : 1 214
    Points
    1 214
    Par défaut
    Citation Envoyé par Mac LAK Voir le message
    Et comment, si le soft n'accepte pas de faire des calculs partiels, ni de recombiner les résultats ?
    J'imaginais une appli (indépendante du logiciel utilisé au dépard pour faire les calculs) installé sur chaque machine devant travailler ensemble, dont une serait serveur.
    L'appli "intercepterais" les demandes de calcul au processeurs, qui les enverrait sur l'appli serveur, qui se chargerais de répartir les calculs sur les autres machines.

    Lesquels autres machines renverraient leurs résultats au serveur, qui se débrouillerais pour enregistrerles résultats dans un fichier...


    Ok c'est peut-être fumeux mais... je m'y connais pas assez dans le domaine de la communication entre appli et processeur pour savoir si c'est faisable ou non.

    En concéquences, comme tu en sais plus que moi je m'incline

    Merci bcp

    The magic of Opera, La magie de l'Opera
    The mysteries of Space Opera, Les mystères de l'Opera Spatial
    Mr. Know-it-all, M. Je-Sais-Tout
    Prelude in C sharp minor, the most beautiful piano song and the best C sharp prelude ever, Prélude en do dièse mineur, le plus beau morceau de piano et le meilleur prélude au C#
    The Mesmerizing Saphir Division for Nerds, L'Hypnotisante Division Saphire pour les Nerds (HDSN)

  6. #6
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Citation Envoyé par cs_ntd Voir le message
    J'imaginais une appli (indépendante du logiciel utilisé au dépard pour faire les calculs) installé sur chaque machine devant travailler ensemble, dont une serait serveur.
    C'est exactement ce qu'il se passe avec des applications conçues pour ça : tu installes sur les machines "esclaves" une version réduite de ton programme (une option dans l'installation, souvent), et tu bosses sur ta machine "maître" normalement... Sauf que tu auras configuré l'appli pour qu'elle sache qu'elle a N machines à sa disposition pour les calculs.

    Citation Envoyé par cs_ntd Voir le message
    L'appli "intercepterais" les demandes de calcul au processeurs, qui les enverrait sur l'appli serveur, qui se chargerais de répartir les calculs sur les autres machines.
    Impossible : ce serait un hook au niveau CPU, et ce n'est pas possible de faire ça, tout simplement. Quelque chose travaillant aussi bas niveau ne pourrait tout simplement pas distinguer si c'est ton application qui s'exécute, ou l'OS, ou une autre appli... Et même dans ton application : ce pourrait être aussi bien le code rafraîchissant l'IHM que du calcul, ou même des demandes de lecture sur le disque !

    Citation Envoyé par cs_ntd Voir le message
    Lesquels autres machines renverraient leurs résultats au serveur, qui se débrouillerais pour enregistrerles résultats dans un fichier...
    Oui, c'est en effet le principe : les machines esclaves sont en attente, la machine maître prépare (plus ou moins) les données et leur envoie des bouts de calculs à faire (souvent appelés chunks). C'est en général fait par TCP/IP, avec un protocole plus ou moins spécifique à l'application par dessus.
    En gros, c'est le même principe qu'un thread, sauf que contrairement à un thread qui a accès à la mémoire totale du processus, là il faut absolument copier (et envoyer) explicitement les données initiales, et récupérer (puis écrire/recombiner) les résultats. Bien entendu, cela n'est rentable QUE si le temps de transmission et de copie est négligeable par rapport au temps de calcul, sinon, tu perds des performances au lieu d'en gagner : il faut donc bien faire attention à la granularité des traitements.

    Citation Envoyé par cs_ntd Voir le message
    Ok c'est peut-être fumeux mais... je m'y connais pas assez dans le domaine de la communication entre appli et processeur pour savoir si c'est faisable ou non.
    Une application ne communique pas avec le processeur : c'est le CPU qui l'exécute, en plus de plein d'autres choses. De ce point de vue, le CPU est parfaitement neutre par rapport à ce qu'il exécute, la seule chose qu'il peut savoir, c'est le niveau de protection/exécution des données (en très grossier, il peut à peine distinguer si le code exécuté est en mode kernel ou en mode utilisateur...).

    Mais regarde quand même attentivement les documentations des logiciels que tu utilises, ils offrent peut-être un tel mode de calcul. Blender et POV-Ray, au minimum, le permettent (même si c'est via des programmes externes), pour les autres il faudra fouiller la doc et/ou les sites dédiés.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  7. #7
    Membre éprouvé Avatar de cs_ntd
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2006
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 598
    Points : 1 214
    Points
    1 214
    Par défaut
    OK !

    Je regrette pas d'avoir posé la question

    Effectivement, c'est pas évident de dissocier les informations avec ma méthode

    Dommage elle me plaisait bien (j'étais pas loin de la solution en plus !!!!! )

    [Dernier truc promis ^^ : ya pas moyen de synchroniser couches bas-niveau et haut-niveau ? par exemple synchroniser mon hook CPU avec mon appli de calculs ?]

    Sinon merci pour cette petite balade au coeur des processeurs, elle fut instructive

    The magic of Opera, La magie de l'Opera
    The mysteries of Space Opera, Les mystères de l'Opera Spatial
    Mr. Know-it-all, M. Je-Sais-Tout
    Prelude in C sharp minor, the most beautiful piano song and the best C sharp prelude ever, Prélude en do dièse mineur, le plus beau morceau de piano et le meilleur prélude au C#
    The Mesmerizing Saphir Division for Nerds, L'Hypnotisante Division Saphire pour les Nerds (HDSN)

  8. #8
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Citation Envoyé par cs_ntd Voir le message
    Dommage elle me plaisait bien (j'étais pas loin de la solution en plus !!!!! )
    Dans le principe, en effet. Dans la réalisation... Un peu moins !

    Citation Envoyé par cs_ntd Voir le message
    [Dernier truc promis ^^ : ya pas moyen de synchroniser couches bas-niveau et haut-niveau ? par exemple synchroniser mon hook CPU avec mon appli de calculs ?
    Non, parce qu'il n'est pas possible de hooker un CPU tel que tu l'as décrit. Au mieux, un CPU peut recevoir des interruptions, mais cette faculté est déjà utilisée par le système d'exploitation pour fonctionner. Il faudrait réécrire un scheduler complet pour envisager d'effectuer ceci de façon "automatique", avec 99% de chances de faire effondrer les perfs plutôt que d'en gagner, à cause des copies qui seraient faites en trop grande quantité.

    Citation Envoyé par cs_ntd Voir le message
    Sinon merci pour cette petite balade au coeur des processeurs, elle fut instructive
    De rien ! Bon épluchage de doc, en tout cas !
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. faire dans access plusieurs requetes update en une seule
    Par HF974 dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 03/02/2009, 16h49
  2. Réponses: 5
    Dernier message: 21/06/2007, 08h49
  3. Réponses: 7
    Dernier message: 15/12/2006, 16h14
  4. [HTML] Plusieurs balises <html> dans une seule page???
    Par v4np13 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 02/07/2005, 17h37
  5. plusieurs petite tables ou une seule grande table
    Par aaronw dans le forum Décisions SGBD
    Réponses: 8
    Dernier message: 19/05/2005, 09h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo