[mpich-discuss] MPI x64 - buy advanced version

Jeff Squyres jsquyres at cisco.com
Fri Sep 19 09:09:04 CDT 2008


On Sep 19, 2008, at 9:52 AM, Joao Paulo Lima Santos wrote:

> Really there's MPI_INTEGER8 to represents 8-bit integer, but not all  
> variables can take this form, for example the COUNT:

I think you really mean "8 *byte*".  :-)

> MPI_Send(void* buf,int count,MPI_Datatype datatype,
>   int dest,int tag,MPI_Comm comm);
>
> I am sending a vector whose size exceeds representation 4-bit  
> integer (COUNT). Internally, the MPI function does not appear to  
> represent an entire 8-bit and returns an error message.


If you are sending a message that is larger than 2^31 elements, the  
usual way to do this is to compose an MPI datatype that encompasses  
multiple elements.  Then you can have a "count" argument that is  
smaller than 2^31.

Note, however, if you're programming in Fortran and you use a compiler  
switch to automatically switch your default INTEGERs to be 8 bytes  
long, this may cause problems if the MPI library was not also built  
and compiled with the same compiler option.

-- 
Jeff Squyres
Cisco Systems




More information about the mpich-discuss mailing list