Reputation: 15893
I am running a multi-process calculations using MPICH2
from Argonne National Laboratory. The run is on a single machine, so -localonly
option of mpiexec
is used. Usually everything works.
If the network adapter is enabled when the run starts, and if I disable it during the run, the run fails with error stating:
op_read error on left context: Error = -1
op_read error on parent context: Error = -1
unable to read the cmd header on the left context, Error = -1
.
unable to read the cmd header on the parent context, Error = -1
.
Error posting readv, An existing connection was forcibly closed by the remote host.(10054)
connection to my parent broken, aborting.
state machine failed.
However, if the network adapter is disabled when the run is started, I can enable/disable the adapter as many times as I want, and the run still proceeds to the end.
Is there a way to run mpiexec
or modify smpd
configuration such that MPICH2
is not using network adapter for inter-process communication for local runs even if the adapter is available when the run starts?
Update
The platform is Windows 7 Professional.
The version of MPICH2 is 1.4.1 (32-bit) which is latest version of MPICH2 that I can find.
Upvotes: 1
Views: 1386
Reputation: 9062
As was posted on the mailing list, you're using a very old version of MPICH. You should update to a newer version that does all of this automatically.
UPDATE: As has been pointed out, on Windows, it's not possible to update MPICH past 1.4.1. For anything beyond that, you should use either MS-MPI or Intel MPI.
Upvotes: 1