KaMPIng 0.1.1
Flexible and (near) zero-overhead C++ bindings for MPI
|
#include <memory>
#include <optional>
#include <kassert/kassert.hpp>
#include <mpi.h>
#include "kamping/collectives/bcast.hpp"
#include "kamping/collectives/gather.hpp"
#include "kamping/communicator.hpp"
#include "kamping/measurements/measurement_aggregation_definitions.hpp"
Go to the source code of this file.
Classes | |
struct | kamping::measurements::internal::Max |
Object encapsulating a maximum operation on a given range of objects. More... | |
struct | kamping::measurements::internal::Min |
Object encapsulating a minimum operation on a given range of objects. More... | |
struct | kamping::measurements::internal::Sum |
Object encapsulating a summation operation on a given range of objects. More... | |
struct | kamping::measurements::internal::Gather |
Object encapsulating a gather operation on a given range of objects. More... | |
class | kamping::measurements::internal::TreeNode< DerivedNode > |
Object representing a node in a tree. The class is not meant to be used on its own but to encapsulate the basic "tree-node behaviour" (e.g. management of children nodes etc.) for other specialised node classes like TimerTreeNode via CRTP paradigm. More... | |
class | kamping::measurements::internal::NodeMeasurements< T, default_global_aggregation_mode > |
Class to store measurement data points associated with a node in a measurement tree, e.g., a timer-tree. More... | |
class | kamping::measurements::internal::TimerTreeNode< TimePoint, Duration > |
Class representing a node in the timer tree. Each node represents a time measurement (or multiple with the same key). A node can have multiple children which represent nested time measurements. The measurements associated with a node's children are executed while the node's measurement is still active. More... | |
class | kamping::measurements::internal::CounterTreeNode< DataType > |
Class representing a node in the counter tree. Each node represents a measurement (or multiple with the same key). A node can have multiple children which represent nested measurements. The measurements associated with a node's children are executed while the node's measurement is still active. More... | |
struct | kamping::measurements::internal::Tree< NodeType > |
Tree consisting of objects of type NodeType . The tree constitutes a hierarchy of measurements such that each node correspond to one (or multiple) measurement(s) with the same name. For timer tree, the measurements corresponding to the node's children are all started and stopped while the node's current time measurement is running. More... | |
Functions | |
template<typename Communicator > | |
bool | kamping::measurements::internal::is_string_same_on_all_ranks (std::string const &str, Communicator const &comm) |
Checks that the given string is equal on all ranks in the given communicator. | |
This file contains (distributed) utility classes and functions that are needed for a distributed timer class.
|
inline |
Checks that the given string is equal on all ranks in the given communicator.
Communicator | Type of communicator. |
str | String which is tested for equality on all ranks. |
comm | Communicator on which the equality test is executed. |