Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] OPEN MPI data transfer error
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2010-10-22 15:35:11


It doesn't look like you have completed the request that came back from Irecv. You need to TEST or WAIT on requests before they are actually completed (e.g., in the case of a receive, the data won't be guaranteed to be in the target buffer until TEST/WAIT indicates that the request has completed).

On Oct 22, 2010, at 3:19 PM, Jack Bryan wrote:

> Hi,
>
> I am using open MPI to transfer data between nodes.
>
> But the received data is not what the data sender sends out .
>
> I have tried C and C++ binding .
>
> data sender:
> double* sendArray = new double[sendResultVec.size()];
>
> for (int ii =0 ; ii < sendResultVec.size() ; ii++)
> {
> sendArray[ii] = sendResultVec[ii];
> }
>
> MPI::COMM_WORLD.Send(sendArray, sendResultVec.size(), MPI_DOUBLE, 0, myworkerUpStreamTaskTag);
>
> data receiver:
> double* recvArray = new double[objSize];
>
> mToMasterT1Req = MPI::COMM_WORLD.Irecv(recvArray, objSize, MPI_DOUBLE, destRank, myUpStreamTaskTag);
>
>
> The sendResultVec.size() = objSize.
>
>
> What is the possible reason ?
>
>
> Any help is appreciated.
>
> thanks
>
> jack
>
> Oct. 22 1010
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users

-- 
Jeff Squyres
jsquyres_at_[hidden]
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/