Developer Reference

Java* Bindings for MPI-2 Routines

Intel® MPI Library provides an experimental feature to enable support for Java* MPI applications. Intel MPI Library provides Java bindings for a subset of MPI-2 routines.
You can find all supported MPI routines in the table below. All the classes below belong to the
mpi
package.
Note
  • For static methods, parameters fully correspond to the ones of C routines.
  • For non-static methods, the object that calls the method corresponds to the
    OUT
    parameter of the original C routine.
Java* Bindings for MPI-2 Routines
Java Class
Public Fields and Methods
Original C Routine
MPI
static int Init(String[] args)
MPI_Init
static void Finalize()
MPI_Finalize
static double wTime()
MPI_Wtime
static void abort(Comm comm, int errorCode)
MPI_Abort
String getProcessorName()
MPI_Get_processor_name
Aint
static void getExtent(Datatype dt, Aint lb, Aint extent)
MPI_Type_get_extent
static void getTrueExtent(Datatype dt, Aint true_lb, Aint true_extent)
MPI_Type_get_true_extent
static void getAddress(long location, Aint address)
MPI_Get_address
static void getContents(Datatype dt, int maxIntegers, int maxAddresses, int maxDatatypes, int[] integers, Aint[] addresses, Datatype[] datatypes)
MPI_Type_get_contents
Collective
static void allToAll(Object sendbuf, int sendcount, Datatype sendtype, Object recvbuf, int recvcount, Datatype recvtype, Comm comm)
MPI_Alltoall
static void reduce(Object sendbuf, Object recvbuf, int count, Datatype type, Op op, int root, Comm comm)
MPI_Reduce
static void bcast(Object buffer, int count, Datatype type, int root, Comm comm)
MPI_Bcast
static void gather(Object sendBuffer, int sendCount, Datatype sendType, Object recvBuffer, int recvCount, Datatype recvType, int root, Comm comm)
MPI_Gather
static void gatherv(Object sendBuffer, int sendCount, Datatype sendType, Object recvBuffer, Object recvCount, Object displs, Datatype recvType, int root, Comm comm)
MPI_Gatherv
static void allGather(Object sendBuffer, int sendCount, Datatype sendType, Object recvBuffer, int recvCount, Datatype recvType, Comm comm)
MPI_Allgather
static void allGatherv(Object sendBuffer, int sendCount, Datatype sendType, Object recvBuffer, Object recvCount, Object displs, Datatype recvType, Comm comm)
MPI_Allgatherv
static void allReduce(Object sendbuf, Object recvbuf, int count, Datatype type, Op op, Comm comm)
MPI_Allreduce
static void allToAllv(Object sendbuf, Object sendCount, Object sdispls, Datatype sendType, Object recvbuf, Object recvCount, Object rdispls, Datatype recvType, Comm comm)
MPI_Alltoallv
static void reduceScatter(Object sendbuf, Object recvbuf, Object recvcounts, Datatype type, Op op, Comm comm)
MPI_Reduce_scatter
static void scatter(Object sendBuffer, int sendCount, Datatype sendType, Object recvBuffer, int recvCount, Datatype recvType, int root, Comm comm)
MPI_Scatter
static void scatterv(Object sendBuffer, Object sendCount, Object displs, Datatype sendType, Object recvBuffer, int recvCount, Datatype recvType, int root, Comm comm)
MPI_Scatterv
static void barrier(Comm comm)
MPI_Barrier
Comm
Static field:
Comm WORLD
MPI_COMM_WORLD
Static field:
Comm SELF
MPI_COMM_SELF
int getSize()
MPI_Comm_size
int getRank()
MPI_Comm_rank
Comm create(Group group)
MPI_Comm_create
static Comm create(Comm comm, Group group)
MPI_Comm_create
Comm dup()
MPI_Comm_dup
Comm split(int color, int key)
MPI_Comm_split
Group
Static field:
int MPI_PROC_NULL
MPI_PROC_NULL
Static field:
int MPI_IDENT
MPI_IDENT
Static field:
int MPI_CONGRUENT
MPI_CONGRUENT
Static field:
int MPI_SIMILAR
MPI_SIMILAR
Static field:
int MPI_UNEQUAL
MPI_UNEQUAL
Static field:
Group WORLD
MPI_GROUP_WORLD
void group(Comm comm)
MPI_Comm_group
int getSize()
MPI_Group_size
int getRank()
MPI_Group_rank
int MPI_Group_translate_ranks(int[] ranks1, Group group2, int[] ranks2)
MPI_Group_translate_ranks
static int MPI_Group_translate_ranks(Group group1, int[] ranks1, Group group2, int[] ranks2)
MPI_Group_translate_ranks
int MPI_Group_compare(Group group2)
MPI_Group_compare
int MPI_Group_union(Group group1, Group group2)
MPI_Group_union
int MPI_Group_intersection(Group group1, Group group2)
MPI_Group_intersection
int MPI_Group_difference(Group group1, Group group2)
MPI_Group_difference
int MPI_Group_incl(Group group, int n, int[] ranks)
MPI_Group_incl
int MPI_Group_excl(Group group, int n, int[] ranks)
MPI_Group_excl
Datatype
Static field:
Datatype NULL
MPI_DATATYPE_NULL
Static field:
Datatype BYTE
MPI_UINT8_T
Static field:
Datatype CHAR
MPI_CHAR
Static field:
Datatype SHORT
MPI_INT16_T
Static field:
Datatype BOOLEAN
MPI_UINT8_T
Static field:
Datatype INT
MPI_INT32_T
Static field:
Datatype LONG
MPI_INT64_T
Static field:
Datatype FLOAT
MPI_FLOAT
Static field:
Datatype DOUBLE
MPI_DOUBLE
Static field:
Datatype PACKED
MPI_PACKED
Static field:
Datatype INT2
MPI_2INT
Static field:
Datatype SHORT_INT
MPI_SHORT_INT
Static field:
Datatype LONG_INT
MPI_LONG_INT
Static field:
Datatype FLOAT_INT
MPI_FLOAT_INT
Static field:
Datatype DOUBLE_INT
MPI_DOUBLE_INT
Static field:
Datatype FLOAT_COMPLEX
MPI_C_FLOAT_COMPLEX
Static field:
Datatype DOUBLE_COMPLEX
MPI_C_DOUBLE_COMPLEX
void contiguous(int count, Datatype type)
MPI_Type_contiguous
void commit()
MPI_Type_commit
int getTypeSize()
MPI_Type_size
void free()
MPI_Type_free
void vector(int count, int blockLength, int stride, Datatype baseType)
MPI_Type_vector
void hvector(int count, int blockLength, int stride, Datatype oldType)
MPI_Type_create_hvector
void indexed(int count, int[] blockLength, int[] displacement, Datatype oldType)
MPI_Type_indexed
void hindexed(int count, int[] blockLength, Aint[] displacement, Datatype oldType)
MPI_Type_create_hindexed
void struct(int count, int[] blockLength, Aint[] displacement, Datatype[] oldTypes)
MPI_Type_struct
Op
Static field:
Op MPI_OP_NULL
MPI_OP_NULL
Static field:
Op MPI_MAX
MPI_MAX
Static field:
Op MPI_MIN
MPI_MIN
Static field:
Op MPI_SUM
MPI_SUM
Static field:
Op MPI_PROD
MPI_PROD
Static field:
Op MPI_LAND
MPI_LAND
Static field:
Op MPI_BAND
MPI_BAND
Static field:
Op MPI_LOR
MPI_LOR
Static field:
Op MPI_BOR
MPI_BOR
Static field:
Op MPI_LXOR
MPI_LXOR
Static field:
Op MPI_BXOR
MPI_BXOR
Static field:
Op MPI_MINLOC
MPI_MINLOC
Static field:
Op MPI_MAXLOC
MPI_MAXLOC
Op(UserFunction uf)
-
void setUserFunction(UserFunction userFunction)
-
void createOP(boolean commute)
MPI_Op_Create
UserFunction
(abstract)
UserFunction(Datatype type, int length)
-
void setInoutvec(ByteBuffer inoutvec)
-
void setInvec(ByteBuffer invec)
-
abstract void call(int type, int length)
-
PTP
static void send(Buffer buffer, int count, Datatype type, int dest, int tag, Comm comm)
MPI_Send
static void send(<java array> buffer, int count, Datatype type, int dest, int tag, Comm comm)
MPI_Send
static Status recv(Buffer buf, int count, Datatype type, int source, int tag, Comm comm)
MPI_Recv
static Status recv(<java array> buf, int count, Datatype type, int source, int tag, Comm comm)
MPI_Recv
static Request isend(Buffer buffer, int count, Datatype type, int dest, int tag, Comm comm)
MPI_Isend
static Request isend(<java array> buffer, int count, Datatype type, int dest, int tag, Comm comm)
MPI_Isend
static Request irecv(Buffer buf, int count, Datatype type, int source, int tag, Comm comm)
MPI_Irecv
static Request irecv(<java array> buf, int count, Datatype type, int source, int tag, Comm comm)
MPI_Irecv
static Status sendRecv(Buffer sendbuf, int sendcount, Datatype sendtype, int senddest, int sendtag, Buffer recvbuf, int recvcount, Datatype recvtype, int recvsource, int recvtag, Comm comm)
MPI_Sendrecv
Request
Status Wait()
MPI_Wait
static Status[] waitAll(int count, Request[] reqs)
MPI_Waitall
static Status waitAny(int count, Request[] reqs, int[] index)
MPI_Waitany
static Status[] waitSome(int count, Request[] reqs, int[] outcount, int[] indexes)
MPI_Waitsome
boolean test(Status status)
MPI_Test

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.