Hi Ashley,
My understanding is that this behavior would not be enabled by default
in the standard debug build. The "always convert to synchronous sends"
mode would be an additional configure-time option.
Samuel K. Gutierrez
Ashley Pittman wrote:
On Mon, 2009-08-24 at 13:27 -0400, Jeff Squyres wrote:
It's the difference between:
a. if (0) { ... convert ... } Modern compilers will remove this code
as part of dead-code removal.
b. if (1) { ... convert ... } Modern compilers will remove the "if
(1)" and always execute the code.
c. if (some_variable) { ... convert ...} An MCA parameter can load
some_variable with 0 or 1.
The point of b is for sysadmins (or individual developers) who want to
force there to *always* be correct MPI applications.
But couldn't the sysadmin equally well write a config file to achieve
the same effect should they want to?
Having it enabled (and on) in the standard "debug" build is going to
change the behaviour of applications with using a debug library, may
well render bugs un-reproducible in debug mode or worse you may end up
with end-user applications that only run in debug mode and not with a
normal build.
I'm all for having as much error checking enabled in debug builds as
possible but to change the behaviour risks masking problems elsewhere
IMHO.
Ashley,