20#ifndef REALM_SAMPLING_H
21#define REALM_SAMPLING_H
37 class SamplingProfiler;
39 class CoreReservationSet;
41 namespace ProfilingGauges {
59 Gauge(
const std::string &_name);
66 Gauge &operator=(
const Gauge ©_from) {
return *
this; }
93 operator T(
void)
const;
110 template <
typename T>
122 operator T(
void)
const;
147 template <
typename T =
int>
156 operator T(
void)
const;
188 template <
typename T>
194 namespace SampleFile {
232#include "realm/sampling.inl"
Definition sampling_impl.h:54
T DATA_TYPE
Definition sampling.h:85
AbsoluteGauge< T > & operator=(T to_set)
AbsoluteGauge< T > & operator=(const AbsoluteGauge< T > ©_from)
static const int GAUGE_TYPE
Definition sampling.h:84
atomic< T > curval
Definition sampling.h:107
AbsoluteGauge< T > & operator-=(T to_sub)
AbsoluteGauge(const std::string &_name, T initval=T(), SamplingProfiler *_profiler=0)
AbsoluteGauge< T > & operator+=(T to_add)
Definition sampling.h:111
T DATA_TYPE
Definition sampling.h:114
AbsoluteRangeGauge< T > & operator-=(T to_sub)
atomic< T > minval
Definition sampling.h:143
AbsoluteRangeGauge< T > & operator+=(T to_add)
AbsoluteRangeGauge< T > & operator=(T to_set)
AbsoluteRangeGauge(const std::string &_name, T initval=T(), SamplingProfiler *_profiler=0)
atomic< T > curval
Definition sampling.h:142
atomic< T > maxval
Definition sampling.h:144
static const int GAUGE_TYPE
Definition sampling.h:113
AbsoluteRangeGauge< T > & operator=(const AbsoluteRangeGauge< T > ©_from)
Definition sampling.h:148
EventCounter(const std::string &_name, SamplingProfiler *_profiler=0)
EventCounter< T > & operator+=(T to_add)
static const int GAUGE_TYPE
Definition sampling.h:150
atomic< T > events
Definition sampling.h:168
T DATA_TYPE
Definition sampling.h:151
GaugeSampler * sampler
Definition sampling.h:74
static size_t instantiate_templates(void)
static void add_gauge(T *gauge, SamplingProfiler *_profiler)
const std::string name
Definition sampling.h:62
Gauge(const std::string &_name)
GaugeType
Definition sampling.h:51
@ GTYPE_ABSOLUTERANGE
Definition sampling.h:54
@ GTYPE_ABSOLUTE
Definition sampling.h:53
@ GTYPE_UNKNOWN
Definition sampling.h:52
@ GTYPE_EVENTCOUNT
Definition sampling.h:55
Definition sampling.h:173
void * impl
Definition sampling.h:191
SamplingProfiler(bool is_default)
void configure_from_cmdline(std::vector< std::string > &cmdline, CoreReservationSet &crs)
GaugeSampler * add_gauge(T *gauge)
Definition activemsg.h:38
bool operator==(const Sample &other) const
Definition sampling.h:99
T value
Definition sampling.h:101
Definition sampling.h:127
T value
Definition sampling.h:134
T minval
Definition sampling.h:135
bool operator==(const Sample &other) const
Definition sampling.h:128
T maxval
Definition sampling.h:136
Definition sampling.h:159
bool operator==(const Sample &other) const
Definition sampling.h:160
T count
Definition sampling.h:162
Definition sampling.h:211
int gauge_type
Definition sampling.h:213
int gauge_id
Definition sampling.h:212
char name[48]
Definition sampling.h:215
char gauge_dtype[8]
Definition sampling.h:214
Definition sampling.h:218
int first_sample
Definition sampling.h:221
int gauge_id
Definition sampling.h:219
int compressed_len
Definition sampling.h:220
int last_sample
Definition sampling.h:222