Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
29284 Discussions

fort run out of comunicators with coarray fortran

Alberto_R_
Beginner
351 Views

 

  Hi,

  I am running a coarray fortran application with intel fortran compiler ifort (IFORT) 13.0.1 20121010, and after some transfers between images, the code crashes with the error:

 

Fatal error in MPI_Win_create: Other MPI error, error stack:
MPI_Win_create(153)...........: MPI_Win_create(base=0x23ec030, size=8224, disp_unit=1, MPI_INFO_NULL, comm=0x84000000, win=0x2c92650) failed
MPID_Win_create(37)...........: 
MPIDI_Win_create(92)..........: 
MPIR_Comm_dup_impl(55)........: 
MPIR_Comm_copy(1070)..........: 
MPIR_Get_contextid(543).......: 
MPIR_Get_contextid_sparse(834): Too many communicators

 

It seems to me that the compiler is translating each sync images/daa transfer into a different MPI communicators, and therefore the program runs very fast out of communicators.

The code crashes after a fixed number of calls to a subroutine that reads:

  subroutine copybnd_su2_id(U,latt, id, ieo)

    type (SU2_field), intent (inout) :: U
    type (lattice), intent (in)  :: latt
    integer, intent (in) :: id, ieo

    integer :: imx, j, ifc, kt, ipr, isrc, iofs
    complex (kind=DPC), allocatable :: zbuf(:,:)[:], zloc(:,:)

    iofs = 0
    imx = maxval(latt%iface(:))/2+1
    allocate(zbuf(imx,2)

  • , zloc(imx,2))
  •     ...

     

    Any ideas about how to overcome this issue?

     

    0 Kudos
    1 Reply
    Steven_L_Intel1
    Employee
    351 Views

    We don't use individual communicators, so I am not sure what is causing that error. I see that you're using an old Fortran version - can you try it with a newer one? (15.0 is current). If you can provide a self-contained test case we'd be glad to take a look.

    0 Kudos
    Reply