[CIG-SEISMO] SPECFEM2D-6.0.0 MPI compile errors using openmpi

Dimitri Komatitsch dimitri.komatitsch at univ-pau.fr
Fri Oct 8 05:50:36 PDT 2010


Dear Dylan, dear all,

Pieyre Le Loher also noticed that yesterday (in the 2D version
and in the 3D version as well).

What happens is that GNU gfortran checks very carefully that the code
conforms to the Fortran95 standard, while Intel ifort (that most of the 
developers use, in particular at Princeton) is not as strict (e.g.
you can have lines longer than 132 characters etc, while gfortran stops 
in that case).

Basically the error you mention is a line that is longer than 132 
characters.

Pieyre, could you please cut it with an "&" and svn commit the change?

More generally, let us make sure that all developers check that the code
gives no warning with both Intel ifort and GNU gfortran (which is free) 
before committing changes to the SVN server.

There are similar problems in the 3D code. Pieyre, could you please fix 
them as well, as we discussed yesterday?

Dylan, what you can do is run svn update tomorrow or on Monday, once 
Pieyre is done fixing the problems.

Thanks,
Dimitri.


On 10/05/2010 07:09 PM, Dylan Mikesell wrote:
> Hi Everyone,
>
> I am trying to compile SPECFEM2D-6.0.0 on a new multicore cluster. This
> is the first time I have tried compiling with MPI. My Makefile is below,
> as well as the error I get during compiling. The error occurs while
> compiling assemble_MPI.F90. Does anyone have any ideas? Does it have to
> do with the version of mpif90 I am using?
> Thanks,
>
> Dylan Mikesell
>
> $ mpif90 --version
> GNU Fortran (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48)
>
>
> my Makefile:
> # GNU gfortran
> #F90 = gfortran
> #F90 = mpif90 -DUSE_MPI -DUSE_METIS -DUSE_SCOTCH
> F90 = mpif90 -DUSE_MPI
> CC = gcc
> FLAGS_NOCHECK = -std=gnu -fimplicit-none -frange-check -O3 -pedantic
> -pedantic-errors -Wunused -Waliasing -Wampersand -Wline-truncation
> -Wsurprising -Wunderflow -fno-trapping-math
> FLAGS_CHECK = $(FLAGS_NOCHECK) -fbounds-check
>
>
> my Error:
> mpif90 -DUSE_MPI  -std=gnu -fimplicit-none -frange-check -O3 -pedantic
> -pedantic-errors -Wunused -Waliasing -Wampersand -Wline-truncation
> -Wsurprising -Wunderflow -fno-trapping-math  -fbounds-check -c -o
> obj/assemble_MPI.o assemble_MPI.F90
>    In file assemble_MPI.F90:349
>
>     double precision,
> dimension(max_ibool_interfaces_size_ac+max_ibool_interfaces
>                    1
> Error: Syntax error in data declaration at (1)
>    In file assemble_MPI.F90:349
>
> ace)
>       1
> Warning: Line truncated at (1)
>    In file assemble_MPI.F90:350
>
>          buffer_send_faces_scalar,&
>         1
> Error: Unclassifiable statement at (1)
>    In file assemble_MPI.F90:365
>
>                array_val1(ibool_interfaces_acoustic(i,num_interface))
>                                                                     1
> Error: Unexpected STATEMENT FUNCTION statement at (1)
>    In file assemble_MPI.F90:371
>
>                array_val2(ibool_interfaces_elastic(i,num_interface))
>                                                                    1
> Error: Unexpected STATEMENT FUNCTION statement at (1)
>    In file assemble_MPI.F90:377
>
>                array_val3(ibool_interfaces_poroelastic(i,num_interface))
>                                                                        1
> Error: Unexpected STATEMENT FUNCTION statement at (1)
>    In file assemble_MPI.F90:382
>
>                array_val4(ibool_interfaces_poroelastic(i,num_interface))
>                                                                        1
> Error: Unexpected STATEMENT FUNCTION statement at (1)
>    In file assemble_MPI.F90:385
>
>        call MPI_ISSEND( buffer_send_faces_scalar(1,num_interface),&
>                       1
> Error: Function 'buffer_send_faces_scalar' at (1) has no IMPLICIT type
>    In file assemble_MPI.F90:395
>
>        call MPI_recv ( buffer_recv_faces_scalar(1,num_interface),&
>                      1
> Error: Function 'buffer_recv_faces_scalar' at (1) has no IMPLICIT type
>    In file assemble_MPI.F90:406
>
>                buffer_recv_faces_scalar(ipoin,num_interface)
>                                       1
> Error: Function 'buffer_recv_faces_scalar' at (1) has no IMPLICIT type
>    In file assemble_MPI.F90:412
>
>                buffer_recv_faces_scalar(ipoin,num_interface)
>                                       1
> Error: Function 'buffer_recv_faces_scalar' at (1) has no IMPLICIT type
>    In file assemble_MPI.F90:418
>
>                buffer_recv_faces_scalar(ipoin,num_interface)
>                                       1
> Error: Function 'buffer_recv_faces_scalar' at (1) has no IMPLICIT type
>    In file assemble_MPI.F90:423
>
>                buffer_recv_faces_scalar(ipoin,num_interface)
>                                       1
> Error: Function 'buffer_recv_faces_scalar' at (1) has no IMPLICIT type
>    In file assemble_MPI.F90:780
>
> e)) +
>       1
> Error: Syntax error in expression at (1)
>    In file assemble_MPI.F90:780
>
> )) +
>       1
> Warning: Line truncated at (1)
>    In file assemble_MPI.F90:781
>
>                buffer_recv_faces_vector_pos(ipoin+1:ipoin+2,inum_interface)
>               1
> Error: Unclassifiable statement at (1)
>    In file assemble_MPI.F90:787
>
> e)) +
>       1
> Error: Syntax error in expression at (1)
>    In file assemble_MPI.F90:787
>
> )) +
>       1
> Warning: Line truncated at (1)
>    In file assemble_MPI.F90:788
>
>                buffer_recv_faces_vector_pow(ipoin+1:ipoin+2,inum_interface)
>               1
> Error: Unclassifiable statement at (1)
> make: *** [obj/assemble_MPI.o] Error 1
>
> _______________________________________________
> CIG-SEISMO mailing list
> CIG-SEISMO at geodynamics.org
> http://geodynamics.org/cgi-bin/mailman/listinfo/cig-seismo
>

-- 
Dimitri Komatitsch - dimitri.komatitsch aT univ-pau.fr
Professor, University of Pau, Institut universitaire de France,
CNRS and INRIA Magique3D, France   http://www.univ-pau.fr/~dkomati1


More information about the CIG-SEISMO mailing list