KaMPIng 0.1.1
Flexible and (near) zero-overhead C++ bindings for MPI
Loading...
Searching...
No Matches
measurement_aggregation_definitions.hpp File Reference
#include <string>
#include <unordered_map>
#include <variant>
#include <vector>
Include dependency graph for measurement_aggregation_definitions.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

template<typename T >
using kamping::measurements::ScalarOrContainer = std::variant<T, std::vector<T>>
 Either a scalar or vector of type T.
 

Enumerations

enum class  kamping::measurements::LocalAggregationMode { accumulate , append }
 Enum to specify how time measurements with same key shall be aggregated locally. More...
 
enum class  kamping::measurements::GlobalAggregationMode { min , max , sum , gather }
 Enum to specify how time durations with same key shall be aggregated across the participating ranks. More...
 

Functions

std::string kamping::measurements::get_string (GlobalAggregationMode mode)
 Returns name of given GlobalAggregationMode.
 

Detailed Description

This file contains functionality that is related to measurement aggregation.

Typedef Documentation

◆ ScalarOrContainer

template<typename T >
using kamping::measurements::ScalarOrContainer = std::variant<T, std::vector<T>>

Either a scalar or vector of type T.

Template Parameters
TType.

Enumeration Type Documentation

◆ GlobalAggregationMode

Enum to specify how time durations with same key shall be aggregated across the participating ranks.

Enumerator
min 

The minimum of the measurement data on the participating ranks will be computed.

max 

The maximum of the measurement data on the participating ranks will be computed.

sum 

The sum of the measurement data on the participating ranks will be computed.

gather 

The measurement data on the participating ranks will be collected in a container.

◆ LocalAggregationMode

Enum to specify how time measurements with same key shall be aggregated locally.

Enumerator
accumulate 

Tag used to indicate that data associated with identical keys will be accumulated into a scalar.

append 

Tag used to indicate that data with identical keys will not be accumulated and stored in a list.

Function Documentation

◆ get_string()

std::string kamping::measurements::get_string ( GlobalAggregationMode mode)
inline

Returns name of given GlobalAggregationMode.

Parameters
modeGiven mode for which a name as a string is requested.
Returns
Name of mode as a string.