/home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/common/mpi.hh File Reference#
|
DiFfRG
Discretization Framework for functional Renormalization Group flows
|
mpi.hh File Reference
#include <DiFfRG/common/utils.hh>#include <deal.II/base/mpi.h>#include <cstddef>#include <cstdint>#include <string>#include <vector>Go to the source code of this file.
Namespaces | |
| namespace | DiFfRG |
| namespace | DiFfRG::MPI |
Functions | |
| bool | DiFfRG::MPI::available () |
| Whether this build has MPI and MPI_Init has run. Everything below degrades to a single-rank no-op when this is false, so callers never have to branch on the build type. | |
| uint | DiFfRG::MPI::rank (MPI_Comm comm) |
| uint | DiFfRG::MPI::size (MPI_Comm comm) |
| void | DiFfRG::MPI::barrier (MPI_Comm comm) |
| void | DiFfRG::MPI::sum_reduce (MPI_Comm comm, int *data, int size) |
| void | DiFfRG::MPI::max_reduce (MPI_Comm comm, int *data, int size) |
| void | DiFfRG::MPI::min_reduce (MPI_Comm comm, int *data, int size) |
| void | DiFfRG::MPI::sum_reduce (MPI_Comm comm, double *data, int size) |
| void | DiFfRG::MPI::max_reduce (MPI_Comm comm, double *data, int size) |
| void | DiFfRG::MPI::min_reduce (MPI_Comm comm, double *data, int size) |
| int | DiFfRG::MPI::sum_reduce (MPI_Comm comm, int value) |
| int | DiFfRG::MPI::max_reduce (MPI_Comm comm, int value) |
| int | DiFfRG::MPI::min_reduce (MPI_Comm comm, int value) |
| double | DiFfRG::MPI::sum_reduce (MPI_Comm comm, double value) |
| double | DiFfRG::MPI::max_reduce (MPI_Comm comm, double value) |
| double | DiFfRG::MPI::min_reduce (MPI_Comm comm, double value) |
| bool | DiFfRG::MPI::any_of (MPI_Comm comm, bool value) |
| Collective agreement on a predicate. Used to turn a rank-local decision (an abort, a convergence flag) into one that every rank makes identically – ranks that disagree about control flow enter different numbers of collectives and hang. | |
| bool | DiFfRG::MPI::all_of (MPI_Comm comm, bool value) |
| bool | DiFfRG::MPI::agree (MPI_Comm comm, uint64_t token) |
Whether every rank passed the same token. One collective. | |
| void | DiFfRG::MPI::bcast (MPI_Comm comm, void *data, size_t bytes, uint root=0) |
Broadcast raw bytes from root to all ranks. | |
| void | DiFfRG::MPI::allgatherv_bytes (MPI_Comm comm, const void *send, size_t send_bytes, void *recv, const std::vector< int > &recv_counts, const std::vector< int > &displs) |
| Concatenating all-gather of byte blocks of differing size. | |
| MPI_Comm | DiFfRG::MPI::split_shared (MPI_Comm comm) |
| A communicator over the ranks sharing this node's memory, for GPU affinity. | |
| void | DiFfRG::MPI::free_comm (MPI_Comm &comm) |
| void | DiFfRG::MPI::abort (MPI_Comm comm, const std::string &message, int code=1) |
| Tear the whole job down with a message on stderr. | |
Generated by