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

C Discussion :

Aidez moi à avoir un programme lent en exécution


Sujet :

C

  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 6
    Points : 9
    Points
    9
    Par défaut Aidez moi à avoir un programme lent en exécution
    Je veu avoir un programme lent en exécution. En fait je ve tester mon projet de fin d'étude qui consiste à réaliser un cluster (groupement d'ordinateur et parallélisation des systèmes d'exploitations pour diminuer les temps d'exécution des programmes qui restent quelques minutes voir quelques heures pour retourner un résultat.). J'ai réussi à installé le cluster et maintenant je veu tester le résultat. Je vais mettre le programme sur une seule machine (le programme va retourner le résultat dans un car d'heure par exemple), en mettant le programme dans un cluster (le programme va tourner le résultat dans 5 minutes par exemple).

  2. #2
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    Citation Envoyé par bejaouijamil
    Je veu avoir un programme lent en exécution. En fait je ve tester mon projet de fin d'étude qui consiste à réaliser un cluster (groupement d'ordinateur et parallélisation des systèmes d'exploitations pour diminuer les temps d'exécution des programmes qui restent quelques minutes voir quelques heures pour retourner un résultat.). J'ai réussi à installé le cluster et maintenant je veu tester le résultat. Je vais mettre le programme sur une seule machine (le programme va retourner le résultat dans un car d'heure par exemple), en mettant le programme dans un cluster (le programme va tourner le résultat dans 5 minutes par exemple).
    Oui et donc ? Tu as des résultats de tests à nous faire partager ?

    Quel rapport avec le langage C ?

  3. #3
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Citation Envoyé par bejaouijamil
    Je veu avoir un programme lent en exécution.
    En général, on recherche plutôt le contraire...

    A part cela, quelle est ta question concernant le langage C. N'hésite pas à poster le morceau de code qui te pose problème et à poser des questions précises.

    Thierry

  4. #4
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Points : 11 625
    Points
    11 625
    Par défaut
    Citation Envoyé par mujigka
    En général, on recherche plutôt le contraire...
    Oui mais pour un cluster il faut un programme long (sinon pourquoi clusteriser ) et facilement parallélisable (pour faire des tests autant se placer dans de bonnes conditions, la réalité sera surement tout autre).

    Il y a justement un article paru ce mois-ci dans Linux Magazine sur l'utilisation de MPI avec le calcule de Pi. Voici un article similaire : http://tbrouard.univ-tours.fr/t/arti...?id_article=57

  5. #5
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Citation Envoyé par gege2061
    Oui mais pour un cluster il faut un programme long (sinon pourquoi clusteriser ) et facilement parallélisable (pour faire des tests autant se placer dans de bonnes conditions, la réalité sera surement tout autre).

    Il y a justement un article paru ce mois-ci dans Linux Magazine sur l'utilisation de MPI avec le calcule de Pi. Voici un article similaire : http://tbrouard.univ-tours.fr/t/arti...?id_article=57
    Mea culpa, c'est vrai que c'est un domaine (celui des clusters) que je connais assez mal...

    Thierry

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 30
    Points : 15
    Points
    15
    Par défaut
    en général on utilise les cluster dans le data mining c'est des téchniques de classement des données utiliser également dans la reconnaissance des formes pour l'imagerie (c'est du domaine de l'IA)
    mais avec un programme lent (je ne sais pas si on parle du meme domaine)
    soit un peut plus claire, j'ai des resssources dans ce domaine

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 30
    Points : 15
    Points
    15
    Par défaut
    j'ai lu le lien, j'ai compris qu'il utilise les méthodes de cluster pour appliquée ou non l'algo du parallèlisme, en effect c'est trés subtile comme téchnique dans le but d'otimiser les moyens (nembre de machine utiliser)
    tu spécifie les parties de l'algo a parallèliser que tu va executer sur les autre machine, et celle qui na pas besoin d'etre parrallèliser tu va l'executer sur le serveur,
    le tous synchroniser par le serveur dans le but de garder une cohérence dans l'execution
    mais le temps d'execution est trés important si on fait appel au parallèlisme c'est pour optimiser le temps d'execution.
    et si tu veut tester ton parallélisme utilise le programme qui calcule n!

  8. #8
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    C'est parallélisable, n! ?
    Moi, ça m'a l'air d'une grosse réduction...

    Enfin, c'est vrai qu'une réduction peut rester partiellement parallélisable, OpenMP a même des pragmas pour ça...

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 30
    Points : 15
    Points
    15
    Par défaut
    voila l'algirithme On utilise une PRAM EREW
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    // Initialisation du tableau
     
    Pour  i de 0 à n-1 faire 
    	Fact[i]1 ;
    Finpour ;
     
    // Calcul de la factorielle
     
    Pour  i de 1 à n faire en parallèle
    	Fact[i] Fact[i-1]*i ;
    Finpour;
    sinon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    // Initialisation du tableau
     
    Pour  i de 1 à n faire en parallèle                On utilise n processeurs qui s’exécutent en parallèle
    	Parbegin                                               
    		Fact[i] = (n-i) + 1 ;                                    ҢA(n) = O(n)
    	Parend
    FinPour ;
     
     
    //Calcul de la factorielle
     
    Tantque il existe P(i) tq suiv[i] != NULL faire     A chaque itération, un pointeur sur deux disparaît  
    	Parbegin				
    		Fact[i]=Fact[suiv[i]];			       ΤA(n) = O(log n)
    		Suiv[i]=suiv[suiv[i]];                          (*) explications en B /
    	Parend
    FinTantque;
    a toi de programmer pour voir la dif il faut mettre n=9999999, par exemple
    est si tu veut t'amuser encore plus essaie la serie de fibonnacci avec les matrices

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/01/2010, 16h17
  2. aidez moi a réaliser ce petit programme
    Par belaggoun2000 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/01/2010, 21h43
  3. Aidez moi pour mon premier programme
    Par ws.emine dans le forum C++
    Réponses: 23
    Dernier message: 13/12/2006, 19h58

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