The original problem used a separate file and not a module. Its clearly a
bizarre Intel bug, I am only continuing to persue it here as I'm curious as
to why the segfault messages disappear at higher process counts

John

On 18 November 2014 09:58, <michael.rach...@dlr.de> wrote:

>  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% 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> 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> 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> 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
>
> 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
> 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
> 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
>
>
>
> _______________________________________________
> users mailing list
> 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/25835.php
>

Reply via email to