![]() |
Reference documentation for deal.II version 9.3.3
|
#include <deal.II/base/mpi_consensus_algorithms.h>
Public Member Functions | |
Selector (Process< T1, T2 > &process, const MPI_Comm &comm) | |
virtual | ~Selector ()=default |
virtual std::vector< unsigned int > | run () override |
Protected Attributes | |
Process< T1, T2 > & | process |
const MPI_Comm & | comm |
const bool | job_supports_mpi |
const unsigned int | my_rank |
const unsigned int | n_procs |
Private Attributes | |
std::shared_ptr< Interface< T1, T2 > > | consensus_algo |
A class which delegates its task to other ConsensusAlgorithms::Interface implementations depending on the number of processes in the MPI communicator. For a small number of processes it uses PEX and for a large number of processes NBX. The threshold depends if the program is compiled in debug or release mode.
T1 | The type of the elements of the vector to be sent. |
T2 | The type of the elements of the vector to be received. |
Definition at line 481 of file mpi_consensus_algorithms.h.
Utilities::MPI::ConsensusAlgorithms::Selector< T1, T2 >::Selector | ( | Process< T1, T2 > & | process, |
const MPI_Comm & | comm | ||
) |
|
virtualdefault |
Destructor.
|
overridevirtual |
Run consensus algorithm and return the requesting processes.
Implements Utilities::MPI::ConsensusAlgorithms::Interface< T1, T2 >.
|
private |
Definition at line 507 of file mpi_consensus_algorithms.h.
|
protectedinherited |
Reference to the process provided by the user.
Definition at line 186 of file mpi_consensus_algorithms.h.
|
protectedinherited |
MPI communicator.
Definition at line 191 of file mpi_consensus_algorithms.h.
|
protectedinherited |
Cache if job supports MPI.
Definition at line 196 of file mpi_consensus_algorithms.h.
|
protectedinherited |
Rank of this process.
Definition at line 201 of file mpi_consensus_algorithms.h.
|
protectedinherited |
Number of processes in the communicator.
Definition at line 206 of file mpi_consensus_algorithms.h.