[mpich-discuss] The equivalent HPF command in MPI

Anthony Chan chan at mcs.anl.gov
Thu Sep 22 10:08:04 CDT 2011


----- Original Message -----

> I want to be sure that if these 2 commands are equivalent or not:
> 
> C_rh=CSHIFT(C_rh,-1,4) !HPF

I am not familiar HPF, but I couldn't find CSHIFT in some online HPF documentation.
Howeveer, CSHITF is a Fortran 90 operator on array, but it is a local operation.

> MPI_Recv(C_rh,count, mreal,rank+1,MPI_COMM_WORLD,msid,ierr) !MPI
> MPI_Send(C_rh,count, mreal,rank-1,MPI_COMM_WORLD,msid,ierr) !MPI

You used to use msid to designate MPI_Request.  MPI_Send and MPI_Recv
do not have MPI_Request argument, only the non-blocking version have
the it.  Also, your Send and Recv do not seem to have tag argument!

Aside from those errors, what are you trying to do ?  Stencil exchange or
implement circular shift on a global array ..... ?

> and the second, is there any efficient way of debugging for finding
> deadlocks in the code?

If you have access to a parallel debugger, like totalview, you could see
if it still see the deadlock and start there.  If not, you could add some
print statements in your code to see where MPICH2 detects the deadlock.

A.Chan



More information about the mpich-discuss mailing list