mpi4py.MPI.Comm

Package mpi4py :: Module MPI :: Class Comm |
[hide private]
[frames] | no frames]

# type Comm

Known Subclasses:
  - Intracomm
  - , Intercomm

Communicator

Instance Methods | [hide private]
Abort(self, int errorcode=0) Terminate MPI execution environment |
Allgather(self, sendbuf, recvbuf) Gather to All, gather data from all processes and distribute it to all other processes in a group |
Allgatherv(self, sendbuf, recvbuf) Gather to All Vector, gather data from all processes and distribute it to all other processes in a group providing different amount of data and displacements |
Allreduce(self, sendbuf, recvbuf, Op op=SUM) All Reduce |
Alltoall(self, sendbuf, recvbuf) All to All Scatter/Gather, send data from all to all processes in a group |
Alltoallv(self, sendbuf, recvbuf) All to All Scatter/Gather Vector, send data from all to all processes in a group providing different amount of data and displacements |
Alltoallw(self, sendbuf, recvbuf) Generalized All-to-All communication allowing different counts, displacements and datatypes for each partner |
Barrier(self) Barrier synchronization |
Bcast(self, buf, int root=0) Broadcast a message from one process to all other processes in a group |
Bsend(self, buf, int dest, int tag=0) Blocking send in buffered mode |
Bsend_init(self, buf, int dest, int tag=0) Persistent request for a send in buffered mode |
Call_errhandler(self, int errorcode) Call the error handler installed on a communicator |
Clone(self) Clone an existing communicator |
Compare(type cls, Comm comm1, Comm comm2) Compare two communicators |
Create(self, Group group) Create communicator from group |
Create_group(self, Group group, int tag=0) Create communicator from group |
Create_keyval(type cls, copy_fn=None, delete_fn=None, nopython=False) Create a new attribute key for communicators |
Delete_attr(self, int keyval) Delete attribute value associated with a key |
Disconnect(self) Disconnect from a communicator |
Dup(self, Info info=None) Duplicate an existing communicator |
Dup_with_info(self, Info info) Duplicate an existing communicator |
Free(self) Free a communicator |
Free_keyval(type cls, int keyval) Free and attribute key for communicators |
Gather(self, sendbuf, recvbuf, int root=0) Gather together values from a group of processes |
Gatherv(self, sendbuf, recvbuf, int root=0) Gather Vector, gather data to one process from all other processes in a group providing different amount of data and displacements at the receiving sides |
Get_attr(self, int keyval) Retrieve attribute value by key |
Get_errhandler(self) Get the error handler for a communicator |
Get_group(self) Access the group associated with a communicator |
Get_info(self) Return the hints for a communicator that are currently in use |
Get_name(self) Get the print name for this communicator |
Get_parent(type cls) Return the parent intercommunicator for this process |
Get_rank(self) Return the rank of this process in a communicator |
Get_size(self) Return the number of processes in a communicator |
Get_topology(self) Determine the type of topology (if any) associated with a communicator |
Iallgather(self, sendbuf, recvbuf) Nonblocking Gather to All |
Iallgatherv(self, sendbuf, recvbuf) Nonblocking Gather to All Vector |
Iallreduce(self, sendbuf, recvbuf, Op op=SUM) Nonblocking All Reduce |
Ialltoall(self, sendbuf, recvbuf) Nonblocking All to All Scatter/Gather |
Ialltoallv(self, sendbuf, recvbuf) Nonblocking All to All Scatter/Gather Vector |
Ialltoallw(self, sendbuf, recvbuf) Nonblocking Generalized All-to-All |
Ibarrier(self) Nonblocking Barrier |
Ibcast(self, buf, int root=0) Nonblocking Broadcast |
Ibsend(self, buf, int dest, int tag=0) Nonblocking send in buffered mode |
Idup(self) Nonblocking duplicate an existing communicator |
Igather(self, sendbuf, recvbuf, int root=0) Nonblocking Gather |
Igatherv(self, sendbuf, recvbuf, int root=0) Nonblocking Gather Vector |
Improbe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Nonblocking test for a matched message |
Iprobe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Nonblocking test for a message |
Irecv(self, buf, int source=ANY_SOURCE, int tag=ANY_TAG) Nonblocking receive |
Ireduce(self, sendbuf, recvbuf, Op op=SUM, int root=0) Nonblocking Reduce |
Ireduce_scatter(self, sendbuf, recvbuf, recvcounts=None, Op op=SUM) Nonblocking Reduce-Scatter (vector version) |
Ireduce_scatter_block(self, sendbuf, recvbuf, Op op=SUM) Nonblocking Reduce-Scatter Block (regular, non-vector version) |
Irsend(self, buf, int dest, int tag=0) Nonblocking send in ready mode |
Is_inter(self) Test to see if a comm is an intercommunicator |
Is_intra(self) Test to see if a comm is an intracommunicator |
Iscatter(self, sendbuf, recvbuf, int root=0) Nonblocking Scatter |
Iscatterv(self, sendbuf, recvbuf, int root=0) Nonblocking Scatter Vector |
Isend(self, buf, int dest, int tag=0) Nonblocking send |
Issend(self, buf, int dest, int tag=0) Nonblocking send in synchronous mode |
Join(type cls, int fd) Create a intercommunicator by joining two processes connected by a socket |
Mprobe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Blocking test for a matched message |
Probe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Blocking test for a message |
Recv(self, buf, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Blocking receive |
Recv_init(self, buf, int source=ANY_SOURCE, int tag=ANY_TAG) Create a persistent request for a receive |
Reduce(self, sendbuf, recvbuf, Op op=SUM, int root=0) Reduce |
Reduce_scatter(self, sendbuf, recvbuf, recvcounts=None, Op op=SUM) Reduce-Scatter (vector version) |
Reduce_scatter_block(self, sendbuf, recvbuf, Op op=SUM) Reduce-Scatter Block (regular, non-vector version) |
Rsend(self, buf, int dest, int tag=0) Blocking send in ready mode |
Rsend_init(self, buf, int dest, int tag=0) Persistent request for a send in ready mode |
Scatter(self, sendbuf, recvbuf, int root=0) Scatter data from one process to all other processes in a group |
Scatterv(self, sendbuf, recvbuf, int root=0) Scatter Vector, scatter data from one process to all other processes in a group providing different amount of data and displacements at the sending side |
Send(self, buf, int dest, int tag=0) Blocking send |
Send_init(self, buf, int dest, int tag=0) Create a persistent request for a standard send |
Sendrecv(self, sendbuf, int dest, int sendtag=0, recvbuf=None, int source=ANY_SOURCE, int recvtag=ANY_TAG, Status status=None) Send and receive a message |
Sendrecv_replace(self, buf, int dest, int sendtag=0, int source=ANY_SOURCE, int recvtag=ANY_TAG, Status status=None) Send and receive a message |
Set_attr(self, int keyval, attrval) Store attribute value associated with a key |
Set_errhandler(self, Errhandler errhandler) Set the error handler for a communicator |
Set_info(self, Info info) Set new values for the hints associated with a communicator |
Set_name(self, name) Set the print name for this communicator |
Split(self, int color=0, int key=0) Split communicator by color and key |
Split_type(self, int split_type, int key=0, Info info=INFO_NULL) Split communicator by color and key |
Ssend(self, buf, int dest, int tag=0) Blocking send in synchronous mode |
Ssend_init(self, buf, int dest, int tag=0) Persistent request for a send in synchronous mode |
__eq__(y) x==y |
__ge__(y) x>=y |
__gt__(y) x>y |
__le__(y) x<=y |
__lt__(y) x<y |
__ne__(y) x!=y |
a new object with type S, a subtype of T |
__new__(S, ...) |
__nonzero__() x != 0 |
allgather(self, sendobj) Gather to All |
allreduce(self, sendobj, op=SUM) Reduce to All |
alltoall(self, sendobj) All to All Scatter/Gather |
barrier(self) Barrier |
bcast(self, obj, int root=0) Broadcast |
bsend(self, obj, int dest, int tag=0) Send in buffered mode |
f2py(type cls, arg) |
gather(self, sendobj, int root=0) Gather |
ibsend(self, obj, int dest, int tag=0) Nonblocking send in buffered mode |
improbe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Nonblocking test for a matched message |
iprobe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Nonblocking test for a message |
irecv(self, buf=None, int source=ANY_SOURCE, int tag=ANY_TAG) Nonblocking receive |
isend(self, obj, int dest, int tag=0) Nonblocking send |
issend(self, obj, int dest, int tag=0) Nonblocking send in synchronous mode |
mprobe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Blocking test for a matched message |
probe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Blocking test for a message |
py2f(self) |
recv(self, buf=None, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) Receive |
reduce(self, sendobj, op=SUM, int root=0) Reduce |
scatter(self, sendobj, int root=0) Scatter |
send(self, obj, int dest, int tag=0) Send |
sendrecv(self, sendobj, int dest, int sendtag=0, recvbuf=None, int source=ANY_SOURCE, int recvtag=ANY_TAG, Status status=None) Send and Receive |
ssend(self, obj, int dest, int tag=0) Send in synchronous mode |

Properties | [hide private]
| group communicator group
| info communicator info
| is_inter is intercommunicator
| is_intra is intracommunicator
| is_topo is a topology communicator
| name communicator name
| rank rank of this process in communicator
| size number of processes in communicator
| topology communicator topology type

Method Details | [hide private]

### Abort(self, int errorcode=0) |
Terminate MPI execution environment This is a direct call, use it with care!!!.

### Probe(self, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) |
Blocking test for a message This function blocks until the message arrives.

### Recv(self, buf, int source=ANY_SOURCE, int tag=ANY_TAG, Status status=None) |
Blocking receive This function blocks until the message is received

### Send(self, buf, int dest, int tag=0) |
Blocking send This function may block until the message is received. Whether or not Send blocks depends on several factors and is implementation dependent

### Sendrecv(self, sendbuf, int dest, int sendtag=0, recvbuf=None, int source=ANY_SOURCE, int recvtag=ANY_TAG, Status status=None) |
Send and receive a message This function is guaranteed not to deadlock in situations where pairs of blocking sends and receives may deadlock.A common mistake when using this function is to mismatch the tags with the source and destination ranks, which can result in deadlock.

### Sendrecv_replace(self, buf, int dest, int sendtag=0, int source=ANY_SOURCE, int recvtag=ANY_TAG, Status status=None) |
Send and receive a message This function is guaranteed not to deadlock in situations where pairs of blocking sends and receives may deadlock.A common mistake when using this function is to mismatch the tags with the source and destination ranks, which can result in deadlock.

### __new__(S, ...) |
Returns: a new object with type S, a subtype of T Overrides: object.__new__