I tried to do a few tests in this way(using console tools test different version), but each time I got a different ranking.
DateTime result = instance.CreateTime;
First:
// * Summary *
BenchmarkDotNet=v0.11.5, OS=Windows 10.0.17134.765 (1803/April2018Update/Redstone4)
Intel Core i7-6700HQ CPU 2.60GHz (Skylake), 1 CPU, 8 logical and 4 physical cores
Frequency=2531254 Hz, Resolution=395.0611 ns, Timer=TSC
.NET Core SDK=2.2.204
[Host] : .NET Core 2.0.9 (CoreCLR 4.6.26614.01, CoreFX 4.6.26614.01), 64bit RyuJIT
Job-RRJNSC : .NET Core 2.0.9 (CoreCLR 4.6.26614.01, CoreFX 4.6.26614.01), 64bit RyuJIT
Job-MDBOLW : .NET Core 2.1.11 (CoreCLR 4.6.27617.04, CoreFX 4.6.27617.02), 64bit RyuJIT
Job-XBBZHA : .NET Core 2.2.5 (CoreCLR 4.6.27617.05, CoreFX 4.6.27618.01), 64bit RyuJIT
Runtime=Core Categories=Read,Time
| Method |
Toolchain |
Mean |
Error |
StdDev |
Median |
Min |
Max |
Ratio |
RatioSD |
Rank |
Gen 0 |
Gen 1 |
Gen 2 |
Allocated |
| Origin |
netcoreapp2.0 |
0.0008 ns |
0.0028 ns |
0.0026 ns |
0.0000 ns |
0.0000 ns |
0.0100 ns |
? |
? |
1 |
- |
- |
- |
- |
| Origin |
netcoreapp2.1 |
0.0030 ns |
0.0095 ns |
0.0089 ns |
0.0000 ns |
0.0000 ns |
0.0337 ns |
? |
? |
1 |
- |
- |
- |
- |
| Origin |
netcoreapp2.2 |
0.3825 ns |
0.0079 ns |
0.0070 ns |
0.3833 ns |
0.3703 ns |
0.3924 ns |
? |
? |
2 |
- |
- |
- |
- |
// * Warnings *
ZeroMeasurement
DynamicCallFieldTest.Origin: Runtime=Core, Toolchain=netcoreapp2.0 -> The method duration is indistinguishable from the empty method duration
DynamicCallFieldTest.Origin: Runtime=Core, Toolchain=netcoreapp2.1 -> The method duration is indistinguishable from the empty method duration
// * Hints *
Outliers
DynamicCallFieldTest.Origin: Runtime=Core, Toolchain=netcoreapp2.2 -> 1 outlier was removed (2.45 ns)
Second:
// * Summary *
BenchmarkDotNet=v0.11.5, OS=Windows 10.0.17134.765 (1803/April2018Update/Redstone4)
Intel Core i7-6700HQ CPU 2.60GHz (Skylake), 1 CPU, 8 logical and 4 physical cores
Frequency=2531254 Hz, Resolution=395.0611 ns, Timer=TSC
.NET Core SDK=2.2.204
[Host] : .NET Core 2.0.9 (CoreCLR 4.6.26614.01, CoreFX 4.6.26614.01), 64bit RyuJIT
Job-SDDWOR : .NET Core 2.2.5 (CoreCLR 4.6.27617.05, CoreFX 4.6.27618.01), 64bit RyuJIT
Job-OXUJBP : .NET Core 2.0.9 (CoreCLR 4.6.26614.01, CoreFX 4.6.26614.01), 64bit RyuJIT
Job-LEIQTS : .NET Core 2.1.11 (CoreCLR 4.6.27617.04, CoreFX 4.6.27617.02), 64bit RyuJIT
Runtime=Core Categories=Read,Time
| Method |
Toolchain |
Mean |
Error |
StdDev |
Min |
Max |
Median |
Ratio |
RatioSD |
Rank |
Gen 0 |
Gen 1 |
Gen 2 |
Allocated |
| Origin |
netcoreapp2.2 |
0.0150 ns |
0.0066 ns |
0.0194 ns |
0.0000 ns |
0.1049 ns |
0.0127 ns |
? |
? |
1 |
- |
- |
- |
- |
| Origin |
netcoreapp2.0 |
0.2881 ns |
0.0439 ns |
0.0856 ns |
0.0000 ns |
0.3514 ns |
0.3128 ns |
? |
? |
2 |
- |
- |
- |
- |
| Origin |
netcoreapp2.1 |
0.3031 ns |
0.0188 ns |
0.0167 ns |
0.2814 ns |
0.3426 ns |
0.2975 ns |
? |
? |
3 |
- |
- |
- |
- |
// * Warnings *
MultimodalDistribution
DynamicCallFieldTest.Origin: Runtime=Core, Toolchain=netcoreapp2.2 -> It seems that the distribution is bimodal (mValue = 3.35)
ZeroMeasurement
DynamicCallFieldTest.Origin: Runtime=Core, Toolchain=netcoreapp2.2 -> The method duration is indistinguishable from the empty method duration
// * Hints *
Outliers
DynamicCallFieldTest.Origin: Runtime=Core, Toolchain=netcoreapp2.0 -> 4 outliers were removed, 9 outliers were detected (1.98 ns..2.21 ns, 2.36 ns..2.40 ns)
DynamicCallFieldTest.Origin: Runtime=Core, Toolchain=netcoreapp2.1 -> 1 outlier was removed (2.47 ns)
Is there something wrong with this result?
I tried to do a few tests in this way(using console tools test different version), but each time I got a different ranking.
First:
Second:
Is there something wrong with this result?