Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: [OMPI devel] yet another fortran (documentation) issue
From: Paul Hargrove (phhargrove_at_[hidden])
Date: 2014-01-23 18:52:22


The following is an issue found when testing with xlf-14.1, which is
already known to have problems with the F08 stuff. So, I've configured
with "FC=xlf90 --enable-mpi-fortran=usempi".

The problem is that mpifort is now a wrapper around xlf90 and thus is
assuming F90 free-form input, independent of the file suffix. This results
in errors building fixed-form (f77) codes:

$ mpifort hello_mpifh.f
"hello_mpifh.f", line 1.1: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", line 2.3: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", line 3.27: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", line 4.27: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", line 5.3: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", line 6.3: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", line 7.1: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", line 8.3: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", line 9.1: 1515-019 (S) Syntax is incorrect.
"hello_mpifh.f", 1515-002 (S) END card is missing. One is assumed.
** _main === End of Compilation 1 ===
"hello_mpifh.f", line 22.19: 1515-019 (S) Syntax is incorrect.
** main === End of Compilation 2 ===
1501-511 Compilation failed for file hello_mpifh.f.

This can, fortunately, be worked around with "-qfixed":

$ mpifort -qfixed hello_mpifh.f
** main === End of Compilation 1 ===
1501-510 Compilation successful for file hello_mpifh.f.

I *think* that I should have configured with FC=xlf (rather than xlf90)
then it will determine language-level and format based on file suffix. I
can (without re-configuring) confirm that xlf honors the extension by
setting OMPI_FC=xlf:

{hargrove_at_vestalac1 examples}$ OMPI_FC=xlf mpifort hello_mpifh.f
** main === End of Compilation 1 ===
1501-510 Compilation successful for file hello_mpifh.f.
{hargrove_at_vestalac1 examples}$ OMPI_FC=xlf mpifort hello_usempi.f90
** main === End of Compilation 1 ===
1501-510 Compilation successful for file hello_usempi.f90.

The term "fortran compiler" in Open MPI's README is not (as far as I could
see) clearly defined as "a fortran compiler which honors file suffixes to
determine language dialect"

My FC=xlf90 setting is "historical" from the testing scripts I've used
since the 1.5 and 1.6 series.

ADDITIONALLY, the Open MPI manpages STILL say FC is to be a fortran90
compiler and F77 is to be an fortran77 compiler. It looks like others
might encounter the same problem I describe above just by reading the
documentation too closely.

I will follow up with specifics on what appears to be out-of-date in the
manpages.

-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