Gilles, Jeff,

In Open MPI 1.6 days, MPI_ARGVS_NULL and MPI_STATUSES_IGNORE
were defined as double precision and MPI_Comm_spawn_multiple
and MPI_Waitall etc. interfaces had two subroutines each.

  
https://github.com/open-mpi/ompi-release/blob/v1.6/ompi/include/mpif-common.h#L148
  
https://github.com/open-mpi/ompi-release/blob/v1.6/ompi/mpi/f90/scripts/mpi-f90-interfaces.h.sh#L9568
  
https://github.com/open-mpi/ompi-release/blob/v1.6/ompi/mpi/f90/scripts/mpi-f90-interfaces.h.sh#L8639

This situation was changed in Open MPI 1.8 but perhaps
use-mpi-tkr interface was not correctly adapted.
Though I don't know the background, the files which caused
compilation errors may be unnecessary.

> Jeff,
> 
> so it seems NAG uses the use-mpi-tkr interface.
> do you have any recollection of why
> - in mpi_waitall_f90.f90, MPI_Waitall and friends have two implementations
> (e.g. MPI_WaitallI and MPI_WaitallS)
> especially, MPI_WaitallI declares array_of_statuses as a double precision
> 
> - in mpi-f90-interfaces.h, MPI_Waitall has only one prototype (no double
> precision)
> 
> Cheers,
> 
> Gilles
> 
> 
> On Monday, August 15, 2016, Franz-Joseph Barthold <franz-joseph.barthold@tu-
> dortmund.de
> <javascript:_e(%7B%7D,'cvml','franz-joseph.barth...@tu-dortmund.de');>>
> wrote:
> 
> > Dear developers,
> >
> > I actually compiled Open MPI 2.0.0 using the NAG compiler (nagfor) in its
> > recent version.
> >
> > The following error occur:
> >
> > make[2]: Entering directory '/home/barthold/devel/prgs/ext
> > ernal/openmpi-2.0.0/
> > ompi/mpi/fortran/use-mpi-tkr'
> >   FC       mpi_comm_spawn_multiple_f90.lo
> > NAG Fortran Compiler Release 6.1(Tozai) Build 6106
> > Error: mpi_comm_spawn_multiple_f90.f90: Argument 3 to
> > MPI_COMM_SPAWN_MULTIPLE
> > has data type DOUBLE PRECISION in reference from MPI_COMM_SPAWN_MULTIPLEN
> > and
> > CHARACTER in reference from MPI_COMM_SPAWN_MULTIPLEA
> > [NAG Fortran Compiler error termination, 1 error]
> > Makefile:1896: recipe for target 'mpi_comm_spawn_multiple_f90.lo' failed
> > make[2]: [mpi_comm_spawn_multiple_f90.lo] Error 1 (ignored)
> >   FC       mpi_testall_f90.lo
> > NAG Fortran Compiler Release 6.1(Tozai) Build 6106
> > Error: mpi_testall_f90.f90: Argument 4 to MPI_TESTALL has data type DOUBLE
> > PRECISION in reference from MPI_TESTALLI and INTEGER in reference from
> > MPI_TESTALLS
> > [NAG Fortran Compiler error termination, 1 error]
> > Makefile:1896: recipe for target 'mpi_testall_f90.lo' failed
> > make[2]: [mpi_testall_f90.lo] Error 1 (ignored)
> >   FC       mpi_testsome_f90.lo
> > NAG Fortran Compiler Release 6.1(Tozai) Build 6106
> > Error: mpi_testsome_f90.f90: Argument 5 to MPI_TESTSOME has data type
> > DOUBLE
> > PRECISION in reference from MPI_TESTSOMEI and INTEGER in reference from
> > MPI_TESTSOMES
> > [NAG Fortran Compiler error termination, 1 error]
> > Makefile:1896: recipe for target 'mpi_testsome_f90.lo' failed
> > make[2]: [mpi_testsome_f90.lo] Error 1 (ignored)
> >   FC       mpi_waitall_f90.lo
> > NAG Fortran Compiler Release 6.1(Tozai) Build 6106
> > Error: mpi_waitall_f90.f90: Argument 3 to MPI_WAITALL has data type DOUBLE
> > PRECISION in reference from MPI_WAITALLI and INTEGER in reference from
> > MPI_WAITALLS
> > [NAG Fortran Compiler error termination, 1 error]
> > Makefile:1896: recipe for target 'mpi_waitall_f90.lo' failed
> > make[2]: [mpi_waitall_f90.lo] Error 1 (ignored)
> >   FC       mpi_waitsome_f90.lo
> > NAG Fortran Compiler Release 6.1(Tozai) Build 6106
> > Error: mpi_waitsome_f90.f90: Argument 5 to MPI_WAITSOME has data type
> > DOUBLE
> > PRECISION in reference from MPI_WAITSOMEI and INTEGER in reference from
> > MPI_WAITSOMES
> > [NAG Fortran Compiler error termination, 1 error]
> > Makefile:1896: recipe for target 'mpi_waitsome_f90.lo' failed
> >
> > Other compiler (Absoft 16.0, Gfortran 6.1, Intel 16 ifort) are less
> > sensitive
> > and compile. But may fail during runtime.
> >
> > My experience is that NAG (nagfor) is the most sensitive Fortran compiler.
> > Thus, I recommend its usage within the development phase.
_______________________________________________
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

Reply via email to