Kernel Tuning Toolkit 2.3
 
Loading...
Searching...
No Matches
PreciseMeasurementParameters.h
Go to the documentation of this file.
1
4#pragma once
5
6#include <cstdint>
7#include <vector>
8#include <KttPlatform.h>
9#include <KttTypes.h>
10
11namespace ktt
12{
13
18enum class KTT_API DurationCalculationMethod
19{
21 Minimum,
23 Median,
26};
27
40
50{
53 uint64_t minTimeMs;
54
58 uint64_t maxTimeMs;
59
66
70
75
81 PreciseMeasurementParameters(uint64_t minTimeMs, uint64_t maxTimeMs, double maxPowerDiff,
82 DurationCalculationMethod durationCalculationMethod = DurationCalculationMethod::Minimum);
83
86 bool IsValid() const;
87
92 static Nanoseconds CalculateDuration(const std::vector<Nanoseconds>& samples,
94
98 static double CalculateStandardDeviation(const std::vector<Nanoseconds>& samples);
99
104 static DurationMeasurementResult ComputeDurationAndStdev(const std::vector<Nanoseconds>& samples,
106};
107
108} // namespace ktt
Definition KttPlatform.h:41
uint64_t Nanoseconds
Definition KttTypes.h:75
DurationCalculationMethod
Definition PreciseMeasurementParameters.h:19
Definition PreciseMeasurementParameters.h:32
size_t sampleCount
Definition PreciseMeasurementParameters.h:38
double standardDeviation
Definition PreciseMeasurementParameters.h:36
Nanoseconds duration
Definition PreciseMeasurementParameters.h:34
Definition PreciseMeasurementParameters.h:50
uint64_t maxTimeMs
Definition PreciseMeasurementParameters.h:58
PreciseMeasurementParameters(uint64_t minTimeMs, uint64_t maxTimeMs, double maxPowerDiff, DurationCalculationMethod durationCalculationMethod=DurationCalculationMethod::Minimum)
uint64_t minTimeMs
Definition PreciseMeasurementParameters.h:53
static double CalculateStandardDeviation(const std::vector< Nanoseconds > &samples)
static DurationMeasurementResult ComputeDurationAndStdev(const std::vector< Nanoseconds > &samples, DurationCalculationMethod method)
double maxPowerDiff
Definition PreciseMeasurementParameters.h:65
static Nanoseconds CalculateDuration(const std::vector< Nanoseconds > &samples, DurationCalculationMethod method)
DurationCalculationMethod durationCalculationMethod
Definition PreciseMeasurementParameters.h:69