[mpich-discuss] Predefined datatype implementation

Rajeev Thakur thakur at mcs.anl.gov
Wed Nov 20 12:12:44 CST 2013

You have to build MPICH with the compilers you plan to use it with. 


On Nov 19, 2013, at 4:29 PM, Jeff Hammond <jeff.science at gmail.com> wrote:

>>> FWIW, even if MPI_VERSION and MPI_SUBVERSION are set correctly,
>>> there’s no guarantee that these types are available.  Types are only
>>> defined based on what compiler you use.  For example, if you use a C89
>>> only compiler, these types will not be available.
> Wouldn't the C89-compiled MPICH need to support these datatypes to
> provide interoperability with C99 code in exactly the same manner as
> it provides Fortran and C++ types for interoperability with code
> written in those languages?  It is ambiguous in what context the word
> "use" is used here so maybe I am misinterpreting your statement.
>> Though with MPICH, that is decided at configure time.  If you later add
>> -std=c89, the header does not avoid defining the types.  Note that some
>> applications need to build different modules with different language
>> standards.
>>> configure is the only reliable check for these.
>> That's what we have always done, but it ends up being quite a lot of
>> configure tests and some people complain because configure takes 100x
>> longer on a multi-million dollar file system than it takes on a laptop,
>> so I was double-checking that they were all necessary.
> Filesystem performance is a red herring.  Don't compile on the
> gold-plated filesystem.  Use /tmp or /scratch, as suggested by
> https://www.alcf.anl.gov/user-guides/compiling-and-linking-faq.  Every
> Linux login node has /tmp.
> Jeff
> -- 
> Jeff Hammond
> jeff.science at gmail.com
> _______________________________________________
> discuss mailing list     discuss at mpich.org
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/discuss

More information about the discuss mailing list