public class Cartcomm extends Intracomm
group, mpjdevComm| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
clone()
Clone the communicator This method will be called only by intracommunicator
....
|
int[] |
Coords(int rank)
Translate process rank to logical process coordinates.
|
static void |
Dims_create(int nnodes,
int[] dims)
Select a balanced distribution of processes per coordinate direction.
|
CartParms |
Get()
Returns Cartesian topology information.
|
int |
Map(int[] dims,
boolean[] periods)
Compute an optimal placement.
|
int |
Rank(int[] coords)
Translate logical process coordinates to process rank.
|
ShiftParms |
Shift(int direction,
int disp)
Compute source and destination ranks for ``shift'' communication.
|
Cartcomm |
Sub(boolean[] remain_dims)
Partition Cartesian communicator into subgroups of lower dimension.
|
int |
Topo_test()
Returns the type of topology associated with the communicator.
|
Allgather, Allgatherv, Allreduce, Alltoall, Alltoallv, Barrier, Bcast, Compare, Create_cart, Create_graph, Create, Gather, Gatherv, Reduce_scatter, Reduce, Scan, Scatter, Scatterv, SplitAbort, Attr_delete, Attr_get, Bsend_init, Bsend, bsend, Create_intercomm, Free, Group, Ibsend, ibsend, Iprobe, Irecv, irecv, Irsend, irsend, Isend, isend, Issend, issend, Pack_size, Pack, Probe, Rank, Recv_init, Recv, recv, Rsend_init, Rsend, rsend, Send_init, Send, send, Sendrecv_replace, sendrecv, Sendrecv, Size, Ssend_init, Ssend, ssend, Test_inter, Unpackpublic java.lang.Object clone()
throws MPIException
Intracommclone in class IntracommMPIExceptionpublic int Rank(int[] coords)
throws MPIException
| coords | Cartesian coordinates of a process |
| returns: | rank of the specified process |
Java binding of the MPI operation MPI_CART_RANK.
MPIExceptionpublic int[] Coords(int rank)
throws MPIException
| rank | rank of a process |
| returns: | Cartesian coordinates of the specified process |
Java binding of the MPI operation MPI_CART_COORDS.
MPIExceptionpublic ShiftParms Shift(int direction, int disp) throws MPIException
| direction | coordinate dimension of shift |
| disp | displacement |
| returns: | object containing ranks of source and destination processes |
Java binding of the MPI operation MPI_CART_SHIFT.
MPIExceptionpublic Cartcomm Sub(boolean[] remain_dims) throws MPIException
| remain_dims | by dimension, true if dimension is to be kept, false otherwise |
| returns: | communicator containing subgrid including this process |
Java binding of the MPI operation MPI_CART_SUB.
MPIExceptionpublic int Map(int[] dims,
boolean[] periods)
throws MPIException
| dims | the number of processes in each dimension |
| periods | true if grid is periodic, false if not, in each dimension |
| returns: | reordered rank of calling process |
Java binding of the MPI operation MPI_CART_MAP.
The number of dimensions is taken to be size of the dims argument.
MPIExceptionpublic CartParms Get() throws MPIException
| returns: | object containing dimensions, periods and local coordinates |
Java binding of the MPI operations MPI_CARTDIM_GET and MPI_CART_GET.
The number of dimensions can be obtained from the size of (eg) dims field of the returned object.
MPIExceptionpublic int Topo_test()
throws MPIException
Comm
| returns: | topology type of communicator |
Java binding of the MPI operation MPI_TOPO_TEST.
The return value will be one of MPI.GRAPH, MPI.CART or MPI.UNDEFINED.
Topo_test in class CommMPIExceptionpublic static void Dims_create(int nnodes,
int[] dims)
throws MPIException
| nnodes | number of nodes in a grid |
| ndims | number of dimensions of grid |
| dims | array specifying the number of nodes in each dimension |
Java binding of the MPI operation MPI_DIMS_CREATE.
Size dims should be ndims. Note that dims is an inout parameter.
MPIException