Skip to content

Latest commit

 

History

History
56 lines (50 loc) · 7.07 KB

Range.Range.md

File metadata and controls

56 lines (50 loc) · 7.07 KB

Range.Range

Source

Range.cs

References:

Results:

BenchmarkDotNet=v0.13.1, OS=macOS Catalina 10.15.7 (19H1519) [Darwin 19.6.0]
Intel Core i5-7360U CPU 2.30GHz (Kaby Lake), 1 CPU, 4 logical and 2 physical cores
.NET SDK=6.0.100
  [Host]        : .NET Core 3.1.20 (CoreCLR 4.700.21.47003, CoreFX 4.700.21.47101), X64 RyuJIT
  .NET 6        : .NET 6.0.0 (6.0.21.52210), X64 RyuJIT
  .NET 6 PGO    : .NET 6.0.0 (6.0.21.52210), X64 RyuJIT
  .NET Core 3.1 : .NET Core 3.1.20 (CoreCLR 4.700.21.47003, CoreFX 4.700.21.47101), X64 RyuJIT

Method Job EnvironmentVariables Runtime Start Count Mean Error StdDev Median Ratio RatioSD Gen 0 Allocated
ForLoop .NET 6 Empty .NET 6.0 0 100 36.53 ns 0.092 ns 0.076 ns 36.51 ns baseline - -
Linq .NET 6 Empty .NET 6.0 0 100 477.73 ns 2.137 ns 1.785 ns 477.24 ns 13.08x slower 0.05x 0.0191 40 B
LinqFaster .NET 6 Empty .NET 6.0 0 100 128.80 ns 0.376 ns 0.352 ns 128.66 ns 3.53x slower 0.01x 0.2027 424 B
LinqFaster_SIMD .NET 6 Empty .NET 6.0 0 100 96.13 ns 0.397 ns 0.332 ns 96.09 ns 2.63x slower 0.01x 0.2027 424 B
LinqAF .NET 6 Empty .NET 6.0 0 100 174.52 ns 0.329 ns 0.292 ns 174.54 ns 4.78x slower 0.01x - -
StructLinq .NET 6 Empty .NET 6.0 0 100 36.95 ns 0.037 ns 0.034 ns 36.94 ns 1.01x slower 0.00x - -
Hyperlinq .NET 6 Empty .NET 6.0 0 100 45.06 ns 0.045 ns 0.042 ns 45.06 ns 1.23x slower 0.00x - -
ForLoop .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 0 100 34.50 ns 0.158 ns 0.282 ns 34.42 ns baseline - -
Linq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 0 100 219.15 ns 0.163 ns 0.145 ns 219.17 ns 6.36x slower 0.02x 0.0191 40 B
LinqFaster .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 0 100 128.48 ns 0.252 ns 0.210 ns 128.43 ns 3.73x slower 0.01x 0.2027 424 B
LinqFaster_SIMD .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 0 100 93.20 ns 0.255 ns 0.239 ns 93.21 ns 2.71x slower 0.01x 0.2027 424 B
LinqAF .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 0 100 178.35 ns 0.312 ns 0.276 ns 178.34 ns 5.18x slower 0.01x - -
StructLinq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 0 100 39.89 ns 0.102 ns 0.090 ns 39.85 ns 1.16x slower 0.00x - -
Hyperlinq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 0 100 44.09 ns 0.949 ns 1.828 ns 42.94 ns 1.28x slower 0.06x - -
ForLoop .NET Core 3.1 Empty .NET Core 3.1 0 100 36.36 ns 0.042 ns 0.035 ns 36.34 ns baseline - -
Linq .NET Core 3.1 Empty .NET Core 3.1 0 100 541.12 ns 2.141 ns 1.898 ns 540.67 ns 14.89x slower 0.05x 0.0191 40 B
LinqFaster .NET Core 3.1 Empty .NET Core 3.1 0 100 127.55 ns 1.311 ns 1.094 ns 127.23 ns 3.51x slower 0.03x 0.2027 424 B
LinqFaster_SIMD .NET Core 3.1 Empty .NET Core 3.1 0 100 92.23 ns 0.546 ns 0.484 ns 92.19 ns 2.54x slower 0.01x 0.2027 424 B
LinqAF .NET Core 3.1 Empty .NET Core 3.1 0 100 245.69 ns 0.143 ns 0.127 ns 245.68 ns 6.76x slower 0.01x - -
StructLinq .NET Core 3.1 Empty .NET Core 3.1 0 100 43.98 ns 0.089 ns 0.083 ns 43.95 ns 1.21x slower 0.00x - -
Hyperlinq .NET Core 3.1 Empty .NET Core 3.1 0 100 187.37 ns 0.112 ns 0.105 ns 187.35 ns 5.15x slower 0.01x - -