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,
>
>
|