Intel® MPI Library

Developer Reference for Linux* OS

ID 768732
Date 10/31/2024
Public

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