diff --git a/src/psij/launchers/scripts/mpi_launch.sh b/src/psij/launchers/scripts/mpi_launch.sh index 31c45233..7c01f89c 100644 --- a/src/psij/launchers/scripts/mpi_launch.sh +++ b/src/psij/launchers/scripts/mpi_launch.sh @@ -16,28 +16,22 @@ fi pre_launch filter_out() { - sed -nE 's/^\[[^]]+\]:(.*)/\1/p' -} - -filter_err() { - sed -nE 's/^\[[^]]+\]:(.*)/\1/p' + # must start with [n,n]: + # may contain one or more [n,n]: lodged into the line + sed -nE 's/^\[[^]]+\]:(.*)/\1/p' | sed -E 's/\[[^]]+\]://g' } filter_out_5() { - sed -nE 's/^\[[^]]+\]: (.*)/\1/p' -} - -filter_err_5() { - sed -nE 's/^\[[^]]+\]: (.*)/\1/p' + sed -nE 's/^\[[^]]+\]: (.*)/\1/p' } set +e if [ "$IS_OPENMPI_5" == "1" ]; then mpirun --oversubscribe --output TAG -n $_PSI_J_PROCESS_COUNT "$@" \ - 1> >(filter_out_5 > $_PSI_J_STDOUT) 2> >(filter_err_5 > $_PSI_J_STDERR) <$_PSI_J_STDIN + 1> >(filter_out_5 > $_PSI_J_STDOUT) 2> >(filter_out_5 > $_PSI_J_STDERR) <$_PSI_J_STDIN elif [ "$IS_OPENMPI" == "1" ]; then mpirun --oversubscribe --tag-output -q -n $_PSI_J_PROCESS_COUNT "$@" \ - 1> >(filter_out > "$_PSI_J_STDOUT") 2> >(filter_err > $_PSI_J_STDERR) <$_PSI_J_STDIN + 1> >(filter_out > "$_PSI_J_STDOUT") 2> >(filter_out > $_PSI_J_STDERR) <$_PSI_J_STDIN else mpirun -n $_PSI_J_PROCESS_COUNT "$@" 1>$_PSI_J_STDOUT 2>$_PSI_J_STDERR <$_PSI_J_STDIN fi