thanks for your reply.
The message size is 72 bytes.
The master sends out the message package to each 51 nodes.
Then, after doing their local work, the worker node send back the same-size
message to the master.
Master use vector.push_back(new messageType) to receive each message from
Hi Brian
When you spawn processes with MPI_Comm_spawn(), one of the arguments
will be set to an intercommunicator of thes spawner and the spawnees.
You can use this intercommunicator as the communicator argument
in the MPI_functions.
Jody
On Fri, Jul 9, 2010 at 5:56 PM, Brian Budge
Jack Bryan wrote:
The master node can receive message ( the same size) from 50
worker nodes.
But, it cannot receive message from 51 nodes. It caused
"truncate error".
How big was the buffer that the program specified in the receive call?
How big was the message that was sent?
Hi,
thanks for all your replies.
The master node can receive message ( the same size) from 50 worker nodes.
But, it cannot receive message from 51 nodes. It caused "truncate error".
I used the same buffer to get the message in 50 node case.
About ""rendezvous" protocol", what is the meaning
I hope I understand the question properly.
The "truncate error" means that the receive buffer provided by the user
was too small to receive the designated message. That's an error in
the user code.
You're asking about some buffering sizes within the MPI
implementation. We can talk about
If it would have been a problem with nohup and openmpi would the problem be
always reproducible.
But this problem is occuring intermittently only.
Some jobs even get completed without any problem.
I believe what you are eluding to is " what is the maximum temperary
holding buffer size created automatically by MPI". For that I don't
know the answer to, althogh I have sent data array of mpi_real8 of
size over 15000 with isend and irecv without problems.
On 7/10/10, Jack Bryan