Class RunMode
Assembly: BenchmarkDotNet.dll
Syntax
public sealed class RunMode : JobMode<RunMode>
Constructors
RunMode()
Declaration
Fields
Dry
Declaration
public static readonly RunMode Dry
Field Value
InvocationCountCharacteristic
Declaration
public static readonly Characteristic<int> InvocationCountCharacteristic
Field Value
IterationCountCharacteristic
Declaration
public static readonly Characteristic<int> IterationCountCharacteristic
Field Value
IterationTimeCharacteristic
Declaration
public static readonly Characteristic<TimeInterval> IterationTimeCharacteristic
Field Value
LaunchCountCharacteristic
Declaration
public static readonly Characteristic<int> LaunchCountCharacteristic
Field Value
Long
Declaration
public static readonly RunMode Long
Field Value
MaxIterationCountCharacteristic
Declaration
public static readonly Characteristic<int> MaxIterationCountCharacteristic
Field Value
MaxWarmupIterationCountCharacteristic
Declaration
public static readonly Characteristic<int> MaxWarmupIterationCountCharacteristic
Field Value
Medium
Declaration
public static readonly RunMode Medium
Field Value
MemoryRandomizationCharacteristic
Declaration
public static readonly Characteristic<bool> MemoryRandomizationCharacteristic
Field Value
MinIterationCountCharacteristic
Declaration
public static readonly Characteristic<int> MinIterationCountCharacteristic
Field Value
MinWarmupIterationCountCharacteristic
Declaration
public static readonly Characteristic<int> MinWarmupIterationCountCharacteristic
Field Value
RunStrategyCharacteristic
Declaration
public static readonly Characteristic<RunStrategy> RunStrategyCharacteristic
Field Value
Short
Declaration
public static readonly RunMode Short
Field Value
UnrollFactorCharacteristic
Declaration
public static readonly Characteristic<int> UnrollFactorCharacteristic
Field Value
VeryLong
Declaration
public static readonly RunMode VeryLong
Field Value
WarmupCountCharacteristic
Declaration
public static readonly Characteristic<int> WarmupCountCharacteristic
Field Value
Properties
InvocationCount
Invocation count in a single iteration.
If specified, IterationTime will be ignored.
If specified, it must be a multiple of UnrollFactor.
Declaration
public int InvocationCount { get; set; }
Property Value
IterationCount
Declaration
public int IterationCount { get; set; }
Property Value
IterationTime
Desired time of execution of an iteration. Used by Pilot stage to estimate the number of invocations per iteration.
The default value is 500 milliseconds.
Declaration
public TimeInterval IterationTime { get; set; }
Property Value
Type |
Description |
TimeInterval |
|
LaunchCount
How many times we should launch process with target benchmark.
Declaration
public int LaunchCount { get; set; }
Property Value
MaxIterationCount
Maximum count of target iterations that should be performed
The default value is 100
If you set this value to below 15, then MultimodalDistributionAnalyzer is not going to work
Declaration
public int MaxIterationCount { get; set; }
Property Value
MaxWarmupIterationCount
Maximum count of warmup iterations that should be performed
The default value is 50
Declaration
public int MaxWarmupIterationCount { get; set; }
Property Value
MemoryRandomization
specifies whether Engine should allocate some random-sized memory between iterations
it makes [GlobalCleanup] and [GlobalSetup] methods to be executed after every iteration
Declaration
public bool MemoryRandomization { get; set; }
Property Value
MinIterationCount
Minimum count of target iterations that should be performed
The default value is 15
If you set this value to below 15, then MultimodalDistributionAnalyzer is not going to work
Declaration
public int MinIterationCount { get; set; }
Property Value
MinWarmupIterationCount
Minimum count of warmup iterations that should be performed
The default value is 6
Declaration
public int MinWarmupIterationCount { get; set; }
Property Value
RunStrategy
Available values: Throughput and ColdStart.
Throughput: default strategy which allows to get good precision level.
ColdStart: should be used only for measuring cold start of the application or testing purpose.
Monitoring: no overhead evaluating, with several target iterations. Perfect for macrobenchmarks without a steady state with high variance.
Declaration
public RunStrategy RunStrategy { get; set; }
Property Value
UnrollFactor
How many times the benchmark method will be invoked per one iteration of a generated loop.
Declaration
public int UnrollFactor { get; set; }
Property Value
WarmupCount
How many warmup iterations should be performed.
Declaration
public int WarmupCount { get; set; }
Property Value
Extension Methods