next up previous contents
Next: Data type matching and Up: Point-to-Point Communication Previous: Introduction   Contents

Blocking Send and Receive operations

void Comm.Send(Object buf, int offset, int count,
               Datatype datatype, int dest, int tag)
Java binding of the MPI operation MPI_SEND. The actual argument associated with buf must be a one-dimensional array. The array elements must have primitive type, and that type must agree with datatype, or be the base type of datatype (see section 3.12). The value offset is a subscript in the array, defining the position of the first item of the message.

The basic datatypes for Java will be


MPI datatype Java datatype
MPI.BYTE byte
MPI.CHAR char
MPI.SHORT short
MPI.BOOLEAN boolean
MPI.INT int
MPI.LONG long
MPI.FLOAT float
MPI.DOUBLE double
MPI.PACKED  



Later we intend to add a new ``primitive'' type MPI.JAVA_OBJECT. If a buffer has ``Java object'' is its base type, it will be serialized inside the wrapper code.

Status Comm.Recv(Object buf, int offset, int count,
                 Datatype datatype, int source, int tag)
Java binding of the MPI operation MPI_RECV. The actual argument associated with buf must be a one-dimensional array. The array elements must have primitive type, and that type must agree with datatype, or be the base type of datatype (see section 3.12). The value offset is a subscript in the array, defining the position into which the first item of the incoming message will be copied. The return value is status.

The MPI constants MPI_ANY_SOURCE and MPI_ANY_TAG are available as MPI.ANY_SOURCE and MPI.ANY_TAG.

int Status.Get_count(Datatype datatype)
Java binding of the MPI operation MPI_GET_COUNT. The return value is count.


next up previous contents
Next: Data type matching and Up: Point-to-Point Communication Previous: Introduction   Contents
Bryan Carpenter 2002-07-12