It may be possibly a bug in Intel-15.0 .
I suspect it has to do with the   contains-block   and with the fact, that you 
call an intrinsic sbr in that contains-block.
Normally this must work. You may try to separate the influence of both:

What happens with these 3 variants of your code:

variant a):   using an own sbr instead of the intrinsic sbr

program fred
use mpi
integer :: ierr
call mpi_init(ierr)
print *,"hello"
call mpi_finalize(ierr)
contains
  subroutine sub
     real :: a(10)
     call mydummy_random_number(a)
   end subroutine sub
   subroutine mydummy_random_number(a)
     real :: a(10)
     print *,’---I am in sbr mydummy_random_number’
   end subroutine mydummy_random_number
end program fred


variant b):   removing the  contains-block

program fred
use mpi
integer :: ierr
call mpi_init(ierr)
print *,"hello"
call mpi_finalize(ierr)
end program fred
!
subroutine sub
    real :: a(10)
    call random_number(a)
end subroutine sub


variant c):     moving the contains-block into a module

module MYMODULE
contains
  subroutine sub
    real :: a(10)
    call random_number(a)
   end subroutine sub
end module MYMODULE
!
program fred
use MYMODULE
use mpi
integer :: ierr
call mpi_init(ierr)
print *,"hello"
call mpi_finalize(ierr)
end program fred


Greetings
Michael Rachner



Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von John Bray
Gesendet: Dienstag, 18. November 2014 10:10
An: Open MPI Users
Betreff: Re: [OMPI users] Fortran and OpenMPI 1.8.3 compiled with Intel-15 does 
nothing silently

A delightful bug this, you get a segfault if you code contains a random_number 
call and is compiled with -fopenmp, EVEN IF YOU CANNOT CALL IT!

program fred
use mpi
integer :: ierr
call mpi_init(ierr)
print *,"hello"
call mpi_finalize(ierr)
contains
  subroutine sub
    real :: a(10)
    call random_number(a)
   end subroutine sub
end program fred
The segfault is nothing to do with OpenMPI, but there remains a mystery as to 
why I only get the segfault error messages on lower node counts.

mpif90 -O0 -fopenmp ./fred.f90
mpiexec -n 6 ./a.out
--------------------------------------------------------------------------
mpiexec noticed that process rank 4 with PID 28402 on node mic2 exited on 
signal 11 (Segmentation fault).
--------------------------------------------------------------------------
jbray@mic2:intel-15_openmpi-1.8.3%<mailto:jbray@mic2:intel-15_openmpi-1.8.3%25> 
mpiexec -n 12 ./a.out
<nothing>
It was the silence that made me raise the issue here. I am running on a 12 
physical core hyperthreaded Xeon Phi. Is there something in OpenMPI that is 
suppressing the messages, as I am getting 4/5 core files each time.
John

On 18 November 2014 04:24, Ralph Castain 
<r...@open-mpi.org<mailto:r...@open-mpi.org>> wrote:
Just checked the head of the 1.8 branch (soon to be released as 1.8.4), and 
confirmed the same results. I know the thread-multiple option is still broken 
there, but will test that once we get the final fix committed.


On Mon, Nov 17, 2014 at 7:29 PM, Ralph Castain 
<r...@open-mpi.org<mailto:r...@open-mpi.org>> wrote:
FWIW: I don't have access to a Linux box right now, but I built the OMPI devel 
master on my Mac using Intel 2015 compilers and was able to build/run all of 
the Fortran examples in our "examples" directory.

I suspect the problem here is your use of the --enable-mpi-thread-multiple 
option. The 1.8 series had an issue with that option - we are in the process of 
fixing it (I'm waiting for an updated patch), and you might be hitting it.

If you remove that configure option, do things then work?
Ralph


On Mon, Nov 17, 2014 at 5:56 PM, Gilles Gouaillardet 
<gilles.gouaillar...@iferc.org<mailto:gilles.gouaillar...@iferc.org>> wrote:
Hi John,

do you MPI_Init() or do you MPI_Init_thread(MPI_THREAD_MULTIPLE) ?

does your program calls MPI anywhere from an OpenMP region ?
does your program calls MPI only within an !$OMP MASTER section ?
does your program does not invoke MPI at all from any OpenMP region ?

can you reproduce this issue with a simple fortran program ? or can you publish 
all your files ?

Cheers,

Gilles


On 2014/11/18 1:41, John Bray wrote:

I have succesfully been using OpenMPI 1.8.3 compiled with Intel-14, using



./configure --prefix=/usr/local/mpi/$(basename $PWD) --with-threads=posix

--enable-mpi-thread-multiple --disable-vt --with-scif=no



I have now switched to Intel 15.0.1, and configuring with the same options,

I get minor changes in config.log about warning spotting, but it makes all

the binaries, and I can compile my own fortran code with mpif90/mpicc



but a command 'mpiexec --verbose -n 12 ./fortran_binary' does nothing



I checked the FAQ and started using



./configure --prefix=/usr/local/mpi/$(basename $PWD) --with-threads=posix

--enable-mpi-thread-multiple --disable-vt --with-scif=no CC=icc CXX=icpc

F77=ifort FC=ifort



but that makes no difference.



Only with -d do I get any more information



mpirun -d --verbose -n 12

/home/jbray/5.0/mic2/one/intel-15_openmpi-1.8.3/one_f_debug.exe

[mic2:21851] procdir: /tmp/openmpi-sessions-jbray@mic2_0/27642/0/0

[mic2:21851] jobdir: /tmp/openmpi-sessions-jbray@mic2_0/27642/0

[mic2:21851] top: openmpi-sessions-jbray@mic2_0

[mic2:21851] tmp: /tmp

[mic2:21851] sess_dir_cleanup: job session dir does not exist

[mic2:21851] procdir: /tmp/openmpi-sessions-jbray@mic2_0/27642/0/0

[mic2:21851] jobdir: /tmp/openmpi-sessions-jbray@mic2_0/27642/0

[mic2:21851] top: openmpi-sessions-jbray@mic2_0

[mic2:21851] tmp: /tmp

[mic2:21851] sess_dir_finalize: proc session dir does not exist

<12 times>





[mic2:21851] sess_dir_cleanup: job session dir does not exist

exiting with status 139



My C codes do not have this problem



Compiler options are



mpicxx -g -O0 -fno-inline-functions -openmp -o one_c_debug.exe async.c

collective.c compute.c memory.c one.c openmp.c p2p.c variables.c

auditmpi.c   control.c inout.c perfio.c ring.c wave.c io.c   leak.c mpiio.c

pthreads.c -openmp -lpthread



mpif90 -g -O0  -fno-inline-functions -openmp -o one_f_debug.exe control.o

io.f90 leak.f90 memory.f90 one.f90 ring.f90 slow.f90 swapbounds.f90

variables.f90 wave.f90 *.F90 -openmp



Any suggestions as to what is upsetting Fortran with Intel-15



John




_______________________________________________

users mailing list

us...@open-mpi.org<mailto:us...@open-mpi.org>

Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users

Link to this post: 
http://www.open-mpi.org/community/lists/users/2014/11/25823.php


_______________________________________________
users mailing list
us...@open-mpi.org<mailto:us...@open-mpi.org>
Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
Link to this post: 
http://www.open-mpi.org/community/lists/users/2014/11/25829.php



_______________________________________________
users mailing list
us...@open-mpi.org<mailto:us...@open-mpi.org>
Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
Link to this post: 
http://www.open-mpi.org/community/lists/users/2014/11/25833.php

Reply via email to