Opened 6 years ago

Closed 5 years ago

#1691 closed bug (wontfix)

MPI_Allreduce fail. (MinGW gfortran + MPICH2 1.4.1p1)

Reported by: lyh03259 Owned by: jayesh
Priority: major Milestone: future
Component: mpich Keywords: MinGW MPI_Allreduce MPI_IN_PLACE
Cc:

Description (last modified by balaji)

I am recently using MPICH2. But I am having MPI_Allreduce failure.

The c version of the code works file. It happens only when I use fortran subroutine and MinGW.

And it is a MPI_IN_PLACE related issue since if you set up a matrix as receive buf, it works without error msg.

To reproduce the error, you can use MinGW on a windows machine (no matter 32bit or 64bit) and compile the following code:

code

	program main
		implicit none
		include 'mpif.h'
		character * (MPI_MAX_PROCESSOR_NAME) processor_name
		integer myid, numprocs, namelen, rc, ierr
		integer, allocatable :: mat1(:, :, :)

		call MPI_INIT( ierr )
		call MPI_COMM_RANK( MPI_COMM_WORLD, myid, ierr )
		call MPI_COMM_SIZE( MPI_COMM_WORLD, numprocs, ierr )
 
		allocate(mat1(-36:36, -36:36, -36:36))
		mat1(:,:,:) = 111
		print *, "Going to call MPI_Allreduce."
		call MPI_Allreduce(MPI_IN_PLACE, mat1(-36, -36, -36), 389017, MPI_INTEGER, MPI_BOR, MPI_COMM_WORLD, ierr)
		print *, "MPI_Allreduce done!!!"
		call MPI_FINALIZE(rc)
	endprogram

end of code

It works on Linux and OS x but failed when using MinGW.

Change History (4)

comment:1 Changed 6 years ago by jayesh

  • Owner set to jayesh
  • Status changed from new to accepted

Works with Intel Visual Fortran compiler but fails with mingw gfortran compiler.

-Jayesh

comment:2 Changed 6 years ago by balaji

  • Milestone set to future

comment:3 Changed 5 years ago by balaji

  • Description modified (diff)
  • Status changed from accepted to new

comment:4 Changed 5 years ago by balaji

  • Resolution set to wontfix
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.