Skip to content

Latest commit

 

History

History
68 lines (62 loc) · 10.3 KB

List.ValueType.ListValueTypeSkipTakeWhere.md

File metadata and controls

68 lines (62 loc) · 10.3 KB

List.ValueType.ListValueTypeSkipTakeWhere

Source

ListValueTypeSkipTakeWhere.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 Skip Count Mean Error StdDev Ratio RatioSD Gen 0 Gen 1 Allocated
ForLoop .NET 6 Empty .NET 6.0 1000 100 541.7 ns 0.49 ns 0.44 ns baseline - - -
Linq .NET 6 Empty .NET 6.0 1000 100 2,116.3 ns 3.02 ns 2.52 ns 3.91x slower 0.00x 0.1526 - 320 B
LinqFaster .NET 6 Empty .NET 6.0 1000 100 3,679.2 ns 17.23 ns 14.39 ns 6.79x slower 0.03x 10.0327 - 21,000 B
LinqFasterer .NET 6 Empty .NET 6.0 1000 100 7,329.9 ns 65.32 ns 61.10 ns 13.53x slower 0.11x 37.0331 - 80,168 B
LinqAF .NET 6 Empty .NET 6.0 1000 100 11,531.1 ns 27.79 ns 24.63 ns 21.29x slower 0.05x - - -
LinqOptimizer .NET 6 Empty .NET 6.0 1000 100 18,415.3 ns 263.53 ns 246.51 ns 34.05x slower 0.43x 49.9878 12.4817 134,727 B
Streams .NET 6 Empty .NET 6.0 1000 100 11,816.1 ns 108.83 ns 101.80 ns 21.82x slower 0.19x 0.5493 - 1,176 B
StructLinq .NET 6 Empty .NET 6.0 1000 100 683.7 ns 1.36 ns 1.21 ns 1.26x slower 0.00x 0.0572 - 120 B
StructLinq_ValueDelegate .NET 6 Empty .NET 6.0 1000 100 563.4 ns 0.19 ns 0.18 ns 1.04x slower 0.00x - - -
Hyperlinq .NET 6 Empty .NET 6.0 1000 100 973.3 ns 0.55 ns 0.46 ns 1.80x slower 0.00x - - -
Hyperlinq_ValueDelegate .NET 6 Empty .NET 6.0 1000 100 789.5 ns 0.32 ns 0.27 ns 1.46x slower 0.00x - - -
ForLoop .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 528.0 ns 0.48 ns 0.40 ns baseline - - -
Linq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 1,264.5 ns 2.59 ns 2.29 ns 2.40x slower 0.00x 0.1526 - 320 B
LinqFaster .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 3,669.0 ns 15.64 ns 14.63 ns 6.95x slower 0.03x 10.0327 - 21,000 B
LinqFasterer .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 7,300.4 ns 64.85 ns 54.15 ns 13.83x slower 0.10x 37.0331 - 80,168 B
LinqAF .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 9,049.9 ns 45.58 ns 38.06 ns 17.14x slower 0.08x - - -
LinqOptimizer .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 19,891.5 ns 160.26 ns 142.07 ns 37.65x slower 0.26x 62.4695 - 134,733 B
Streams .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 10,419.1 ns 36.11 ns 32.01 ns 19.73x slower 0.07x 0.5493 - 1,176 B
StructLinq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 642.1 ns 1.89 ns 1.77 ns 1.22x slower 0.00x 0.0572 - 120 B
StructLinq_ValueDelegate .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 562.6 ns 0.21 ns 0.18 ns 1.07x slower 0.00x - - -
Hyperlinq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 978.3 ns 1.61 ns 1.34 ns 1.85x slower 0.00x - - -
Hyperlinq_ValueDelegate .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 1000 100 790.5 ns 1.37 ns 1.21 ns 1.50x slower 0.00x - - -
ForLoop .NET Core 3.1 Empty .NET Core 3.1 1000 100 618.4 ns 0.42 ns 0.35 ns baseline - - -
Linq .NET Core 3.1 Empty .NET Core 3.1 1000 100 2,938.4 ns 3.91 ns 3.27 ns 4.75x slower 0.00x 0.1526 - 320 B
LinqFaster .NET Core 3.1 Empty .NET Core 3.1 1000 100 3,659.6 ns 24.87 ns 23.26 ns 5.91x slower 0.04x 10.0441 - 21,000 B
LinqFasterer .NET Core 3.1 Empty .NET Core 3.1 1000 100 7,118.4 ns 90.77 ns 84.91 ns 11.52x slower 0.15x 37.0560 - 80,168 B
LinqAF .NET Core 3.1 Empty .NET Core 3.1 1000 100 19,872.8 ns 63.41 ns 49.51 ns 32.14x slower 0.08x - - -
LinqOptimizer .NET Core 3.1 Empty .NET Core 3.1 1000 100 18,548.8 ns 129.64 ns 101.22 ns 30.00x slower 0.16x 54.5654 7.9956 134,761 B
Streams .NET Core 3.1 Empty .NET Core 3.1 1000 100 12,795.9 ns 28.13 ns 21.96 ns 20.69x slower 0.04x 0.5493 - 1,176 B
StructLinq .NET Core 3.1 Empty .NET Core 3.1 1000 100 909.2 ns 1.98 ns 1.75 ns 1.47x slower 0.00x 0.0572 - 120 B
StructLinq_ValueDelegate .NET Core 3.1 Empty .NET Core 3.1 1000 100 654.3 ns 0.43 ns 0.38 ns 1.06x slower 0.00x - - -
Hyperlinq .NET Core 3.1 Empty .NET Core 3.1 1000 100 1,165.1 ns 2.46 ns 2.18 ns 1.88x slower 0.00x - - -
Hyperlinq_ValueDelegate .NET Core 3.1 Empty .NET Core 3.1 1000 100 885.7 ns 2.02 ns 1.89 ns 1.43x slower 0.00x - - -