Dear OpenMPI group,

The following trivial program hangs on the mpi_barrier call with 1.7.1. I am using gfortran/gcc 4.6.3 on Ubuntu linux. OpenMPI was built with --enable-mpi-thread-multiple support and no other options (other than --prefix).

Are there additional options we should be telling configure about? Or have we done something very silly? Mpich2 works just fine...

Walter Spector


program hang
  use mpi
  implicit none

  integer :: me, npes
  integer :: mpierr, provided
  logical :: iampe0

  call mpi_init_thread (  &
      MPI_THREAD_MULTIPLE,  &
      provided,  &
      mpierr)
  print *, 'hello, world!'

! Hangs here with MPI_THREAD_MULTIPLE set...
  call mpi_barrier (MPI_COMM_WORLD, mpierr)

  call mpi_comm_rank (MPI_COMM_WORLD, me, mpierr)
  iampe0 = me == 0
  call mpi_comm_size (MPI_COMM_WORLD, npes, mpierr)
  print *, 'pe:', me, ', total comm size:', npes
  print *, 'I am ', trim (merge ('PE 0    ', 'not PE 0', iampe0))

  call mpi_finalize (mpierr)

end program

Reply via email to