[MPI - Fortran] Erreur mpi_barrier
Bonjour,
j'ai un gros soucis avec mon programme, j'ai passe enormement de temps dessus, mais je n'arrive toujours pas a trouver l'erreur ou le remede.
Si vous pouvez m'aidez s'il vous plait.
donc j'ai un programme qui ecris dans un fichier resultat et ce programme est lancé sur plusieurs processeurs. Donc en fait chaque processeur ecris dans un propore fichier a lui.
A la fin de la boucle je fais appel a mpi_barrier(MPI_comm_world,ier)
pour ensuite demander au processeur 0 de concatener les fichiers resultats de tous les autres procs dans un seul fichier.
j'utilise la fonciton unix call system(' cat fichier1 >> fichier ').
et puis je supprime tous les autres fichiers avec call system(' rm file..')
Le probleme est : quand je regarde mon fichier sortie, je vois qu'il manque quelque resultats. je me dis que c'est peut etre a cause de mpi_barrier qui n'arrete pas le processeur 0 jusqu'a ce que les autres aient finit.
un autre probleme aussi ( incomprehensible) est que je demande l'affichage du rank de chaque processeurs. et l'affichage se fait dans un fichier bien sur! et la encore quand je lance par exemple 4 processeurs
je vois afficher que 2 processeurs, alors que pendant le programme, je vois bien qu'il y a 4 proc qui travaillent( puisque le nombre de fichiers resultats en depend!)
Code:
1 2 3 4 5 6
|
proc deb prog= 1
proc fin= 1
proc deb prog= 0
proc fin= 0 |
l'erreur :
Code:
1 2 3 4 5 6 7 8
| PGFIO/stdio: Stale NFS file handle
PGFIO-F-/list-directed write/unit=6/error code returned by host stdio - 116.
File name = stdout formatted, sequential access record = 3
In source file part-lwt.f, at line number 517
PGFIO/stdio: Stale NFS file handle
PGFIO-F-/list-directed write/unit=6/error code returned by host stdio - 116.
File name = stdout formatted, sequential access record = 3
In source file part-lwt.f, at line number 517 |
pourtant la ligne 517 est correcte, a chaque fois je la change il me met une autre ligne qui n'a rien avoir.
Je me dis que l'affichae des ranks des 2 autres proc vient de la, mais le probleme c'est que je demande affichage au debut et a la fin du prgramme!!
enfin mystere pour moi. si quelqu'un peut m'aider SVP.