Package mpi

Class Intercomm

java.lang.Object
mpi.Comm
mpi.Intercomm
All Implemented Interfaces:
Cloneable, Freeable

public final class Intercomm extends Comm
This class represents intercommunicators.
  • Constructor Details

    • Intercomm

      protected Intercomm(long handle)
    • Intercomm

      protected Intercomm(long[] commRequest)
  • Method Details

    • clone

      public Intercomm clone()
      Duplicates this communicator.

      Java binding of MPI_COMM_DUP.

      It is recommended to use dup() instead of clone() because the last can't throw an MPIException.

      Overrides:
      clone in class Comm
      Returns:
      copy of this communicator
    • dup

      public Intercomm dup() throws MPIException
      Duplicates this communicator.

      Java binding of MPI_COMM_DUP.

      Overrides:
      dup in class Comm
      Returns:
      copy of this communicator
      Throws:
      MPIException - Signals that an MPI exception of some sort has occurred.
    • iDup

      public Intercomm iDup() throws MPIException
      Duplicates this communicator.

      Java binding of MPI_COMM_IDUP.

      The new communicator can't be used before the operation completes. The request object must be obtained calling Comm.getRequest().

      Overrides:
      iDup in class Comm
      Returns:
      copy of this communicator
      Throws:
      MPIException - Signals that an MPI exception of some sort has occurred.
    • dupWithInfo

      public Intercomm dupWithInfo(Info info) throws MPIException
      Duplicates this communicator with the info object used in the call.

      Java binding of MPI_COMM_DUP_WITH_INFO.

      Overrides:
      dupWithInfo in class Comm
      Parameters:
      info - info object to associate with the new communicator
      Returns:
      copy of this communicator
      Throws:
      MPIException - Signals that an MPI exception of some sort has occurred.
    • getRemoteSize

      public int getRemoteSize() throws MPIException
      Size of remote group.

      Java binding of the MPI operation MPI_COMM_REMOTE_SIZE.

      Returns:
      number of process in remote group of this communicator
      Throws:
      MPIException - Signals that an MPI exception of some sort has occurred.
    • getRemoteGroup

      public Group getRemoteGroup() throws MPIException
      Return the remote group.

      Java binding of the MPI operation MPI_COMM_REMOTE_GROUP.

      Returns:
      remote group of this communicator
      Throws:
      MPIException - Signals that an MPI exception of some sort has occurred.
    • merge

      public Intracomm merge(boolean high) throws MPIException
      Creates an intracommuncator from an intercommunicator

      Java binding of the MPI operation MPI_INTERCOMM_MERGE.

      Parameters:
      high - true if the local group has higher ranks in combined group
      Returns:
      new intra-communicator
      Throws:
      MPIException - Signals that an MPI exception of some sort has occurred.
    • getParent

      public static Intercomm getParent() throws MPIException
      Java binding of MPI_COMM_GET_PARENT.
      Returns:
      the parent communicator
      Throws:
      MPIException - Signals that an MPI exception of some sort has occurred.