Note
The documentation on this page was automatically extracted from the DOLFIN C++ code and may need to be edited or expanded.
This class provides utility functions for easy communication with MPI and handles cases when DOLFIN is not configured with MPI.
Return process rank for the communicator
Return size of the group (number of processes) associated with the communicator
Determine whether we should broadcast (based on current parallel policy)
Determine whether we should receive (based on current parallel policy)
Set a barrier (synchronization point)
Send in_values[p0] to process p0 and receive values from process p1 in out_values[p1]
Broadcast vector of value from broadcaster to all processes
Broadcast single primitive from broadcaster to all processes
Scatter vector in_values[i] to process i
Scatter primitive in_values[i] to process i
Gather values on one process
Gather strings on one process
Gather values from all processes. Same data count from each process (wrapper for MPI_Allgather)
Gather values from each process (variable count per process)
Gather values, one primitive from each process (MPI_Allgather)
Return global max value
Return global min value
Sum values and return sum
Return average across comm; implemented only for T == Table
All reduce
Find global offset (index) (wrapper for MPI_(Ex)Scan with MPI_SUM as reduction op)
Send-receive data between processes (blocking)
Send-receive data between processes
Return local range for local process, splitting [0, N - 1] into size() portions of almost equal size
Return local range for given process, splitting [0, N - 1] into size() portions of almost equal size
Return local range for given process, splitting [0, N - 1] into size() portions of almost equal size
Return which process owns index (inverse of local_range)
Return average reduction operation; recognized by all_reduce(MPI_Comm, Table&, MPI_Op)