[OMPI devel] Open MPI 2.0.0: Fortran with NAG compiler (nagfor)

2016-08-15 Thread Franz-Joseph Barthold
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/external/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.

Best regards
FJ Barthold
-- 
Prof. Dr.-Ing. Franz-Joseph Barthold
Numerische Methoden und Informationsverarbeitung (NMI)
Fakultät Architektur und Bauingenieurwesen, TU Dortmund
August-Schmidt-Str. 8, D-44227 Dortmund
E-Mail: franz-joseph.barth...@tu-dortmund.de
___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel


Re: [OMPI devel] Open MPI 2.0.0: Fortran with NAG compiler (nagfor)

2016-08-15 Thread Gilles Gouaillardet
Franz-Joseph,

the excellent NAG compiler is a commercial product, and as such, not all
developers can afford it.

this issue should be fixed in the master (feel free to give the latest
nightly tarball a try)

a fix for v2.x is pending for review at
https://github.com/open-mpi/ompi-release/pull/1215
if you have recent autotools, you can apply the patch available at
https://patch-diff.githubusercontent.com/raw/open-mpi/ompi-release/pull/1215.patch
run autogen.pl and then configure/make/make install

regarding this specific error message, the -mismatch option must be used
e.g. configure FCFLAGS=-mismatch
(the patch does that automatically, and also fix some more issues)

I do not know much about Fortran, so if you have a better idea that does
not require the -mismatch flag, I will value your feedback

Cheers,

Gilles

On Monday, August 15, 2016, Franz-Joseph Barthold <
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/
> external/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.
>
> Best regards
> FJ Barthold
> --
> Prof. Dr.-Ing. Franz-Joseph Barthold
> Numerische Methoden und Informationsverarbeitung (NMI)
> Fakultät Architektur und Bauingenieurwesen, TU Dortmund
> August-Schmidt-Str. 8, D-44227 Dortmund
> E-Mail: franz-joseph.barth...@tu-dortmund.de 
> ___
> devel mailing list
> devel@lists.open-mpi.org 
> https://rfd.newmexicoconsortium.org/mailman/listinfo/devel
>
___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

[OMPI devel] Open MPI 2.0.0: Fortran with NAG compiler (nagfor)

2016-08-15 Thread Gilles Gouaillardet
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 >
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.
>
> Best regards
> FJ Barthold
> --
> Prof. Dr.-Ing. Franz-Joseph Barthold
> Numerische Methoden und Informationsverarbeitung (NMI)
> Fakultät Architektur und Bauingenieurwesen, TU Dortmund
> August-Schmidt-Str. 8, D-44227 Dortmund
> E-Mail: franz-joseph.barth...@tu-dortmund.de
> ___
> devel mailing list
> devel@lists.open-mpi.org
> https://rfd.newmexicoconsortium.org/mailman/listinfo/devel
>
___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel