Skip to content

Latest commit

 

History

History
70 lines (64 loc) · 7.15 KB

Array.Int32.ArrayInt32SkipTakeSelect.md

File metadata and controls

70 lines (64 loc) · 7.15 KB

Array.Int32.ArrayInt32SkipTakeSelect

Source

ArrayInt32SkipTakeSelect.cs

References:

Results:

BenchmarkDotNet=v0.13.1, OS=macOS Catalina 10.15.7 (19H1419) [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-rc.2.21505.57
  [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.48005), X64 RyuJIT
  .NET 6 PGO    : .NET 6.0.0 (6.0.21.48005), 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 Skip Count Mean Error StdDev Ratio RatioSD Gen 0 Allocated
ForLoop .NET 6 1000 100 66.23 ns 0.252 ns 0.235 ns baseline - -
Linq .NET 6 1000 100 1,187.98 ns 4.542 ns 4.027 ns 17.94x slower 0.09x 0.0725 152 B
LinqFaster .NET 6 1000 100 389.42 ns 3.475 ns 3.251 ns 5.88x slower 0.05x 0.6080 1,272 B
LinqFasterer .NET 6 1000 100 857.12 ns 4.306 ns 4.028 ns 12.94x slower 0.07x 0.4206 880 B
LinqAF .NET 6 1000 100 2,571.33 ns 2.578 ns 2.013 ns 38.83x slower 0.15x - -
LinqOptimizer .NET 6 1000 100 3,171.60 ns 13.892 ns 12.994 ns 47.89x slower 0.22x 4.2343 8,866 B
SpanLinq .NET 6 1000 100 251.30 ns 1.850 ns 1.545 ns 3.80x slower 0.03x - -
Streams .NET 6 1000 100 8,231.93 ns 35.737 ns 31.680 ns 124.35x slower 0.72x 0.4272 912 B
StructLinq .NET 6 1000 100 268.81 ns 2.918 ns 2.437 ns 4.06x slower 0.04x 0.0458 96 B
StructLinq_ValueDelegate .NET 6 1000 100 176.99 ns 0.411 ns 0.384 ns 2.67x slower 0.01x - -
Hyperlinq .NET 6 1000 100 227.10 ns 0.611 ns 0.571 ns 3.43x slower 0.02x - -
Hyperlinq_ValueDelegate .NET 6 1000 100 219.71 ns 0.979 ns 0.868 ns 3.32x slower 0.02x - -
ForLoop .NET 6 PGO 1000 100 69.93 ns 0.595 ns 0.528 ns baseline - -
Linq .NET 6 PGO 1000 100 728.82 ns 2.860 ns 2.675 ns 10.42x slower 0.09x 0.0725 152 B
LinqFaster .NET 6 PGO 1000 100 371.81 ns 4.180 ns 3.910 ns 5.32x slower 0.06x 0.6080 1,272 B
LinqFasterer .NET 6 PGO 1000 100 519.29 ns 1.090 ns 0.851 ns 7.43x slower 0.06x 0.4206 880 B
LinqAF .NET 6 PGO 1000 100 2,581.42 ns 6.838 ns 5.710 ns 36.90x slower 0.28x - -
LinqOptimizer .NET 6 PGO 1000 100 2,827.92 ns 19.709 ns 18.436 ns 40.47x slower 0.37x 4.2343 8,866 B
SpanLinq .NET 6 PGO 1000 100 278.79 ns 1.245 ns 1.165 ns 3.99x slower 0.02x - -
Streams .NET 6 PGO 1000 100 6,459.98 ns 30.488 ns 28.519 ns 92.34x slower 0.85x 0.4349 912 B
StructLinq .NET 6 PGO 1000 100 253.98 ns 0.956 ns 0.848 ns 3.63x slower 0.03x 0.0458 96 B
StructLinq_ValueDelegate .NET 6 PGO 1000 100 177.43 ns 0.555 ns 0.492 ns 2.54x slower 0.02x - -
Hyperlinq .NET 6 PGO 1000 100 247.36 ns 1.756 ns 1.557 ns 3.54x slower 0.02x - -
Hyperlinq_ValueDelegate .NET 6 PGO 1000 100 221.36 ns 0.473 ns 0.419 ns 3.17x slower 0.03x - -
ForLoop .NET Core 3.1 1000 100 118.99 ns 0.160 ns 0.125 ns baseline - -
Linq .NET Core 3.1 1000 100 1,236.99 ns 5.922 ns 5.249 ns 10.39x slower 0.04x 0.0725 152 B
LinqFaster .NET Core 3.1 1000 100 393.81 ns 6.243 ns 5.840 ns 3.31x slower 0.05x 0.6080 1,272 B
LinqFasterer .NET Core 3.1 1000 100 824.64 ns 4.519 ns 3.773 ns 6.93x slower 0.03x 0.4206 880 B
LinqAF .NET Core 3.1 1000 100 3,192.10 ns 22.061 ns 19.557 ns 26.80x slower 0.13x - -
LinqOptimizer .NET Core 3.1 1000 100 3,402.03 ns 23.334 ns 20.685 ns 28.61x slower 0.16x 4.2534 8,898 B
SpanLinq .NET Core 3.1 1000 100 445.83 ns 1.571 ns 1.469 ns 3.75x slower 0.02x - -
Streams .NET Core 3.1 1000 100 8,569.77 ns 62.889 ns 55.750 ns 72.05x slower 0.54x 0.4272 912 B
StructLinq .NET Core 3.1 1000 100 479.61 ns 1.650 ns 1.378 ns 4.03x slower 0.01x 0.0458 96 B
StructLinq_ValueDelegate .NET Core 3.1 1000 100 191.65 ns 0.400 ns 0.375 ns 1.61x slower 0.00x - -
Hyperlinq .NET Core 3.1 1000 100 307.95 ns 0.407 ns 0.318 ns 2.59x slower 0.00x - -
Hyperlinq_ValueDelegate .NET Core 3.1 1000 100 235.95 ns 0.344 ns 0.322 ns 1.98x slower 0.00x - -