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

Bibliothèques Discussion :

[MPI] problème avec mpi_file_write


Sujet :

Bibliothèques

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 12
    Points : 8
    Points
    8
    Par défaut [MPI] problème avec mpi_file_write
    Bonjour,

    J'ai un programme parallèle (largement vérifié) pour lequel je dois ajouter une petite fonctionnalité, tous les processus doivent écrire dans un unique fichier. Autant dire que pour l'instant c'est la catastrophe, tout est mélangé.
    J'ai consulté une tonne de site et on trouve que MPI propose la fonction mpi_file_write pour régler ces problèmes mais y a rien à faire même si je copie le code le plus simple ça ne fonctionne pas. Le fichier test_resultat.txt est crée mais les caractères sont illisibles comme si on ouvrait un fichier compilé.
    Voilà un extrait simplifié du code en question :
    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
     
    void compute_mpi(int argc, char **argv, char **files_path, int activity, int group, int debug, int port)
    {
      /* Lance le calcul du recuit simule par les methodes mpi */
      int tab[2]={0,0}, desc=0, pid=(int)getpid(),i;
      char s[255];
      int Buff[BUFSIZE];
      MPI_File test;
      /* Lancement de la procedure mpi */
      Mpi_init(log, argc, argv, tab);
    MPI_File_open(MPI_COMM_WORLD,"test_resultat.txt",MPI_MODE_WRONLY | MPI_MODE_CREATE,MPI_INFO_NULL,&test);
      for (i=0;i<BUFSIZE;i++){
          Buff[i]=i;
      }
       MPI_File_write_shared(test,Buff,BUFSIZE,MPI_INT,MPI_STATUS_IGNORE);
      MPI_File_close(&test);
      MPI_Barrier(MPI_COMM_WORLD);
      MPI_Finalize();
    Il compile très bien avec mpicc et les options -Wextra -Wall -ansi
    Dans l'idéal, je ne veux pas utiliser de set view.

    Voilà je pense que j'ai dû louper un petit truc mais je vois pas où c'est.
    Merci pour votre aide

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    Bon je crois avoir compris le problème. MPI_file_write fonctionne comme fwrite, il écrit donc en binaire. Quelqu'un sait il s'il y a quelque chose du style MPI_file_printf (j'ai rien trouvé dans l'api ) ?

Discussions similaires

  1. problème avec bibliothèque MPI
    Par b.moussa dans le forum C++
    Réponses: 2
    Dernier message: 22/01/2012, 15h44
  2. probléme avec la configuration de MPI
    Par brahimlag dans le forum Linux
    Réponses: 1
    Dernier message: 22/04/2010, 03h43
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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