Je cours dans un cluster. J'ai essayé d'exécuter mon exécutable avec 4 formes différentes:mpirun conservant stdout redirigé
En série, avec
myexec
Cela commence à donner sortie à
stdout
tout de suite, comme prévu.En série, rediriger
stdout
etstderr
, avecmyexec > out-err.log 2>&1
Ceci commence à donner en sortie
out-err.log
tout de suite, comme prévu (vérifié aveccat out-err.log
dans un autre terminal).En parallèle, avec
mpirun -n 2 myexec
Cela commence à donner sortie à
stdout
tout de suite, comme prévu.En parallèle, la réorientation
stdout
etstderr
, avecmpirun -n 2 myexec > out-err.log 2>&1
Cette conserve sortie jusqu'à ce travail est terminé (en raison de l'allocation d'achèvement ou de temps).
Est-il possible d'avoir stdout/stderr « rincée » lors de l'exécution dans le cas 4, donc je peux vérifier out-err.log
?