[petsc-users] misleading "mpich" messages

Barry Smith bsmith at mcs.anl.gov
Tue Apr 25 17:33:16 CDT 2017


> On Apr 25, 2017, at 5:08 PM, Kong, Fande <fande.kong at inl.gov> wrote:
> 
> Thanks, Satish,
> 
> One more question: will petsc complain different versions of other implementations such as intel MPI and IBM MPI? For example, configure with a version of intel MPI, and compile with another version of intel MPI. Do we have error messages on this?

   The compile time checking is in include/petscsys.h so you can easily see what we do do. As Satish says we can try to add more cases one at a time if we know unique macros used in particular mpi.h but with many cases the code will become messy unless there is a pattern we can organize around. 




> 
> Fande,
> 
> On Tue, Apr 25, 2017 at 4:03 PM, Satish Balay <balay at mcs.anl.gov> wrote:
> Added this patch to balay/add-mvapich-version-check
> 
> Satish
> 
> On Tue, 25 Apr 2017, Satish Balay wrote:
> 
> > You can try the attached [untested] patch. It replicates the
> > MPICH_NUMVERSION code and replaces it with MVAPICH2_NUMVERSION
> >
> > Satish
> >
> > On Tue, 25 Apr 2017, Kong, Fande wrote:
> >
> > > On Tue, Apr 25, 2017 at 3:42 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
> > >
> > > >
> > > >    The error message is generated based on the macro MPICH_NUMVERSION
> > > > contained in the mpi.h file.
> > > >
> > > > Apparently MVAPICH also provides this macro, hence PETSc has no way to
> > > > know that it is not MPICH.
> > > >
> > > > If you can locate in the MVAPICH mpi.h include files macros related
> > > > explicitly to MVAPICH then we could possibly use that macro to provide a
> > > > more specific error message.
> > > >
> > >
> > >
> > > There is also a macro: MVAPICH2_NUMVERSION in mpi.h. We might use it to
> > > have a right message.
> > >
> > > Looks possible for me.
> > >
> > > Fande,
> > >
> > >
> > >
> > > >
> > > >   Barry
> > > >
> > > >
> > > > > On Apr 25, 2017, at 4:35 PM, Kong, Fande <fande.kong at inl.gov> wrote:
> > > > >
> > > > > Hi,
> > > > >
> > > > > We configured PETSc with a version of MVAPICH, and complied with another
> > > > version of MVAPICH.  Got the error messages:
> > > > >
> > > > > error "PETSc was configured with one MPICH mpi.h version but now appears
> > > > to be compiling using a different MPICH mpi.h version"
> > > > >
> > > > >
> > > > > Why we could not say something about "MVAPICH" (not "MPICH")?
> > > > >
> > > > > Do we just simply consider all MPI implementations (MVAPICH, maybe Intel
> > > > MPI, IBM mpi?) based on MPICH as "MPICH"?
> > > > >
> > > > > Fande,
> > > >
> > > >
> > >
> >
> 
> 



More information about the petsc-users mailing list