[mpich-discuss] MPI_Bcast error

Pavan Balaji balaji at mcs.anl.gov
Tue Feb 28 17:08:46 CST 2012


Can you send us a test program where it fails?  Below are the answers to 
your questions.

On 02/28/2012 05:03 PM, Luiz Carlos Costa Junior wrote:
> 1) Is there any limitation on the size of the buffer that is sent?

No.  You might run into a limit with the "int" parameter for the 
datatype count if you send more than 2 billion elements, but you can 
easily workaround that by creating a datatype with larger datatypes 
(double or larger contiguous types).  But with 12MB data, that's irrelevant.

> 2) If this limit exists, would it be related to the number of the
> process of the communicator? in this case, I am using 32 processes, but
> I commonly had success with bigger clusters (over 200 processes).

Number of processes don't matter.

> 3) Is the content of data being sent relevant? If I have some
> uninitialized data, would it be a concern? In other words, I understand
> that the only thing that matters is that the buffer size must be correct
> in all process (any combination of datatype/array size) and there must
> be enough allocated space to receive the data, right?

No.  MPI doesn't care what you are sending.

> 4) How is the best way to send this data? Split it in smaller broadcasts
> might be better/safer?

One broadcast is the best.  If you see better performance by doing 
multiple smaller broadcasts, that'll be classified as a bug in our code.

> 5) How should I classify a 12 MB message? Small? Big? I believe it
> should be pretty small because I also have other typical executions
> instances with messages over 100 MB that had sucess.

It's small enough that it should work fine.

-- 
Pavan Balaji
http://www.mcs.anl.gov/~balaji


More information about the mpich-discuss mailing list