A mixin measurer which adds an absolute amount of Gaussian noise to the measurement.
A mixin measurer which adds an absolute amount of Gaussian noise to the measurement.
A random value is sampled from a Gaussian distribution for each measurement x
.
This value is then multiplied with Key.noiseMagnitude
and added to the
measurement. The default value for the noise magnitude is 0.0
- it has to be set
manually for tests requiring artificial noise.
The resulting value is clamped into the range x - magnitude, x + magnitude
.
$noise
Counts autoboxed by a Scala compiler values.
Counts autoboxed by a Scala compiler values.
primitive types whose autoboxing will be counted.
A default measurer executes the test as many times as specified and returns the sequence of measured times.
A measurer that discards measurements during which it detects GC cycles.
A measurer that discards measurements during which it detects GC cycles.
Assume that M
measurements are requested.
To prevent looping forever, after the number of measurement failed due to GC
exceeds the number of successful measurements by more than M
, the subsequent
measurements are accepted regardless of whether GC cycles occur.
Mixin for measurers whose benchmarked value is based on the current iteration.
Measures the total memory footprint of an object created by the benchmarking snippet.
Measures the total memory footprint of an object created by the benchmarking snippet.
Eliminates outliers.
Counts invocations of arbitrary method(s) specified by org.scalameter.execution.invocation.InvocationCountMatcher.
A measurer which adds noise to the measurement.
A mixin measurer which detects outliers (due to an undetected GC or JIT) and requests additional measurements to replace them.
A mixin measurer which detects outliers (due to an undetected GC or JIT) and requests additional measurements to replace them. Outlier elimination can also eliminate some pretty bad allocation patterns in some cases. Only outliers from above are considered.
When detecting an outlier, up to Key.exec.outliers.suspectPercent
% (with a
minimum of 1
) of worst times will be considered.
For example, given Key.exec.outliers.suspectPercent = 25
the times:
10, 11, 10, 12, 11, 11, 10, 11, 44
times 12
and 44
are considered for outlier elimination.
Given the times:
10, 12, 14, 55
the time 55
will be considered for outlier elimination.
A potential outlier (suffix) is removed if removing it increases the coefficient
of variance by at least Key.exec.outliers.covMultiplier
times.
A mixin measurer which causes the value for the benchmark to be reinstantiated
every Key.exec.reinstantiation.frequency
measurements.
A mixin measurer which causes the value for the benchmark to be reinstantiated
every Key.exec.reinstantiation.frequency
measurements.
Before the new value has been instantiated, a full GC cycle is invoked if
Key.exec.reinstantiation.fullGC
is true
.
A mixin measurer which adds an amount of Gaussian noise to the measurement relative to its mean.
A mixin measurer which adds an amount of Gaussian noise to the measurement relative to its mean.
An observations sequence mean m
is computed.
A random Gaussian value is sampled for each measurement x
in the observations
sequence. It is multiplied with m / 10.0
times Key.noiseMagnitude
(default 0.0
). Call this multiplication factor f
.
The resulting value is clamped into the range x - f, x + f
.
The bottomline is - a 1.0
noise magnitude is a variation of 10%
of the mean.
$noise
Measurer that measures nothing.