Updated MPICH-mpiexec patch for MPICH 1.2.4
Pete Wyckoff
pw at osc.edu
Fri May 24 11:54:09 EDT 2002
ben at bellatrix.pcl.ox.ac.uk said:
> While I'm in this generous patch-sharing mood, here's a patch
> for MPICH 1.2.4 to have it work with mpiexec. It's essentially just the
> mpich-1.2.3-alpha-020118-mpiexec.diff patch from the mpiexec
> distribution, with minor formatting and context changes to get it to
> apply cleanly to 1.2.4. Enjoy...
Can you explain this to me? Note that I haven't tried running (or
stressing) yet mpich-1.2.4-p4, but just grepping the sources has me
scratching my head.
mpich-1.2.4-p4 configure by default defines USE_NONBLOCKING_LISTENER_SOCKETS.
I can't find the symbol you introduce, USE_BLOCKING_LISTENER_SOCKETS,
anywhere else but your patch.
Admittedly, I believe that configuring with --disable-nonblocking-listener
will generate a buggy mpich library, and that your changes can only
serve to fix that case. Further your patch appears that it won't harm
or affect the default correct case.
Confused,
-- Pete
> diff -Nur mpich-1.2.4/mpid/ch_p4/p4/lib/p4_bm.c mpich-1.2.4-patched/mpid/ch_p4/p4/lib/p4_bm.c
> --- mpich-1.2.4/mpid/ch_p4/p4/lib/p4_bm.c Mon May 6 04:00:31 2002
> +++ mpich-1.2.4-patched/mpid/ch_p4/p4/lib/p4_bm.c Mon May 13 18:47:01 2002
> @@ -386,14 +386,14 @@
> # ifdef CAN_DO_SOCKET_MSGS
> if (!(p4_global->local_communication_only))
> {
> -#ifdef USE_NONBLOCKING_LISTENER_SOCKETS
> +#ifndef USE_BLOCKING_LISTENER_SOCKETS
> /* Set the listener socket to be nonblocking. */
> int rc = p4_make_socket_nonblocking( end_1 );
> if (rc < 0) {
> p4_error("create_bm_processes: set listener nonblocking",
> rc);
> }
> -#endif /* USE_NONBLOCKING_LISTENER_SOCKETS */
> +#endif /* USE_BLOCKING_LISTENER_SOCKETS */
> p4_local->listener_fd = end_1;
> # if !defined(THREAD_LISTENER)
> close(end_2);
[etc.]
More information about the mpiexec
mailing list