Package mpi

Class Intercomm

  • All Implemented Interfaces:
    java.lang.Cloneable, Freeable

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

      • Intercomm

        protected Intercomm​(long handle)
      • Intercomm

        protected Intercomm​(long[] commRequest)
    • Method Detail

      • 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.