Hi MPICH,I have a small program which has different outputs on MPICH 3.1 & MPICH 3.4.2
The program (code attached):
- Master executes ping-pong with each one of the slaves (separately)
- Each slave replies to master when it gets a message from master
- One of the slaves simulates failre with command abort().
- Master recognizes that slave fails and continues to work with survived slaves only.
I execute my program on ubuntu18.
I use TCP as a transport layer.
Execute command:
mpiexec.hydra -genvall -disable-auto-cleanup -f MpiConfigMachines.txt -launcher=ssh -n 3 ft_ping_pong
I expect that "ping pong" will continue till all 20 iterations will finish.
MPICH 3.1 hydra works as expected only slave 1 fails and ping-pong continues between Master and slave2.
MPICH 3.4.2 hydra process slave 2 fails together with slave 1.
MPICH 3.1 configuration:
./configure --prefix="my directory" --enable-error-checking=runtime --enable-g=dbg CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fpic --enable-threads=runtime --enable-totalview --enable-static --disable-f77 --disable-fc
MPICH 3.4.2 configuration:
$ ./configure --prefix="my directory" --enable-error-checking=all --enable-g=dbg CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fpic --enable-threads=runtime --enable-totalview --enable-static --disable-f77 --disable-fc --disable-fortran --with-device=ch3:nemesis --enable-error-messages=all
Should I use another device or the behavior was modified between versions?
Regards,
Anatoly.