[mpich-discuss] Predefined datatype implementation
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
>>> 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 Hammond
> jeff.science at gmail.com
> discuss mailing list discuss at mpich.org
> To manage subscription options or unsubscribe:
More information about the discuss