Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] openmpi-1.8.2rc2 and f08 interface built with PGI-14.7 causes link error
From: tmishima_at_[hidden]
Date: 2014-07-30 03:14:35




Hi Paul, thank you for your comment.

I don't think my mpi_f08.mod is older one, because the time stamp is
equal to the time when I rebuilt them today.

[mishima_at_manage openmpi-1.8.2rc2-pgi14.7]$ ll lib/mpi*
-rwxr-xr-x 1 mishima mishima 315 Jul 30 12:27 lib/mpi_ext.mod
-rwxr-xr-x 1 mishima mishima 327 Jul 30 12:27 lib/mpi_f08_ext.mod
-rwxr-xr-x 1 mishima mishima 11716 Jul 30 12:27
lib/mpi_f08_interfaces_callbacks.mod
-rwxr-xr-x 1 mishima mishima 374813 Jul 30 12:27 lib/mpi_f08_interfaces.mod
-rwxr-xr-x 1 mishima mishima 715615 Jul 30 12:27 lib/mpi_f08.mod
-rwxr-xr-x 1 mishima mishima 14730 Jul 30 12:27 lib/mpi_f08_sizeof.mod
-rwxr-xr-x 1 mishima mishima 77141 Jul 30 12:27 lib/mpi_f08_types.mod
-rwxr-xr-x 1 mishima mishima 878339 Jul 30 12:27 lib/mpi.mod

Regards,
Tetsuya

> On Tue, Jul 29, 2014 at 6:38 PM, Paul Hargrove <phhargrove_at_[hidden]>wrote:
>
> On Tue, Jul 29, 2014 at 6:33 PM, Paul Hargrove <phhargrove_at_[hidden]>wrote:
> I am trying again with an explicit --enable-mpi-fortran=usempi at
configure time to see what happens.
>
> Of course that should have said --enable-mpi-fortran=usempif08
>
> I've switched to using PG13.6 for my testing.
> I find that even when I pass that flag I see that use_mpi_f08 is NOT
enabled:
>
> checking Fortran compiler ignore TKR syntax... not cached; checking
variants
> checking for Fortran compiler support of TYPE(*), DIMENSION(*)... no
> checking for Fortran compiler support of !DEC$ ATTRIBUTES NO_ARG_CHECK...
no
> checking for Fortran compiler support of !$PRAGMA IGNORE_TKR... no
> checking for Fortran compiler support of !DIR$ IGNORE_TKR... yes
> checking Fortran compiler ignore TKR syntax... 1:real, dimension(*):!DIR$
IGNORE_TKR
> checking if Fortran compiler supports ISO_C_BINDING... yes
> checking if building Fortran 'use mpi' bindings... yes
> checking if Fortran compiler supports SUBROUTINE BIND(C)... yes
> checking if Fortran compiler supports TYPE, BIND(C)... yes
> checking if Fortran compiler supports TYPE(type), BIND(C, NAME="name")...
yes
> checking if Fortran compiler supports PROCEDURE... no
> checking if building Fortran 'use mpi_f08' bindings... no
>
> Contrast that to openmpi-1.8.1 and the same compiler:
>
> checking Fortran compiler ignore TKR syntax... not cached; checking
variants
> checking for Fortran compiler support of TYPE(*), DIMENSION(*)... no
> checking for Fortran compiler support of !DEC$ ATTRIBUTES NO_ARG_CHECK...
no
> checking for Fortran compiler support of !$PRAGMA IGNORE_TKR... no
> checking for Fortran compiler support of !DIR$ IGNORE_TKR... yes
> checking Fortran compiler ignore TKR syntax... 1:real, dimension(*):!DIR$
IGNORE_TKR
> checking if building Fortran 'use mpi' bindings... yes
> checking if Fortran compiler supports ISO_C_BINDING... yes
> checking if Fortran compiler supports SUBROUTINE BIND(C)... yes
> checking if Fortran compiler supports TYPE, BIND(C)... yes
> checking if Fortran compiler supports TYPE(type), BIND(C, NAME="name")...
yes
> checking if Fortran compiler supports optional arguments... yes
> checking if Fortran compiler supports PRIVATE... yes
> checking if Fortran compiler supports PROTECTED... yes
> checking if Fortran compiler supports ABSTRACT... yes
> checking if Fortran compiler supports ASYNCHRONOUS... yes
> checking if Fortran compiler supports PROCEDURE... no
> checking size of Fortran type(test_mpi_handle)... 4
> checking Fortran compiler F08 assumed rank syntax... not cached; checking
> checking for Fortran compiler support of TYPE(*), DIMENSION(..)... no
> checking Fortran compiler F08 assumed rank syntax... no
> checking which mpi_f08 implementation to build... "good" compiler, no
array subsections
> checking if building Fortran 'use mpi_f08' bindings... yes
>
> So, somewhere between 1.8.1 and 1.8.2rc2 something has happened in the
configure logic to disqualify the pgf90 compiler.
>
> I also surprised to see 1.8.2rc2 performing *fewer* tests of FC then
1.8.1 did (unless they moved elsewhere?).
>
> In the end I cannot reproduce the originally reported problem for the
simple reason that I instead see:
>
> {hargrove_at_hopper04
openmpi-1.8.2rc2-linux-x86_64-pgi-14.4}$ ./INST/bin/mpif90 ../test.f
> PGF90-F-0004-Unable to open MODULE file mpi_f08.mod (../test.f: 2)
> PGF90/x86-64 Linux 14.4-0: compilation aborted
>
>
> Tetsuya Mishima,
>
> Is it possible that your installation of 1.8.2rc2 was to the same prefix
as an older build?
> It that is the case, you may have the mpi_f08.mod from the older build
even though no f08 support is in the new build.
>
>
> -Paul
>
>
> --
>
> Paul H. Hargrove                          PHHargrove_at_[hidden]
> Future Technologies Group
> Computer and Data Sciences Department     Tel: +1-510-495-2352
> Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900
_______________________________________________
> devel mailing list
> devel_at_[hidden]
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/develLink to
this post: http://www.open-mpi.org/community/lists/devel/2014/07/15342.php