Skip to content

Latest commit

 

History

History
70 lines (64 loc) · 6.69 KB

Array.ValueType.ArrayValueTypeWhereCount.md

File metadata and controls

70 lines (64 loc) · 6.69 KB

Array.ValueType.ArrayValueTypeWhereCount

Source

ArrayValueTypeWhereCount.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 Count Mean Error StdDev Ratio RatioSD Gen 0 Allocated
ForLoop .NET 6 100 73.77 ns 0.370 ns 0.346 ns baseline - -
ForeachLoop .NET 6 100 141.90 ns 0.722 ns 0.676 ns 1.92x slower 0.01x - -
Linq .NET 6 100 883.46 ns 3.532 ns 3.304 ns 11.98x slower 0.07x 0.0153 32 B
LinqFaster .NET 6 100 283.39 ns 1.065 ns 0.889 ns 3.84x slower 0.02x - -
LinqFasterer .NET 6 100 280.18 ns 1.396 ns 1.306 ns 3.80x slower 0.03x - -
LinqAF .NET 6 100 797.15 ns 3.289 ns 2.916 ns 10.81x slower 0.06x - -
StructLinq .NET 6 100 297.10 ns 1.506 ns 1.335 ns 4.03x slower 0.03x 0.0305 64 B
LinqOptimizer .NET 6 100 700.11 ns 3.713 ns 3.474 ns 9.49x slower 0.07x 0.0114 24 B
Streams .NET 6 100 685.21 ns 3.781 ns 3.537 ns 9.29x slower 0.06x 0.1717 360 B
StructLinq_ValueDelegate .NET 6 100 183.93 ns 0.461 ns 0.409 ns 2.49x slower 0.01x - -
Hyperlinq .NET 6 100 566.43 ns 0.625 ns 0.488 ns 7.68x slower 0.04x - -
Hyperlinq_ValueDelegate .NET 6 100 309.94 ns 0.519 ns 0.485 ns 4.20x slower 0.02x - -
ForLoop .NET 6 PGO 100 73.92 ns 0.178 ns 0.158 ns baseline - -
ForeachLoop .NET 6 PGO 100 142.65 ns 0.783 ns 0.732 ns 1.93x slower 0.01x - -
Linq .NET 6 PGO 100 584.26 ns 3.295 ns 3.082 ns 7.90x slower 0.05x 0.0153 32 B
LinqFaster .NET 6 PGO 100 281.71 ns 1.644 ns 1.538 ns 3.81x slower 0.02x - -
LinqFasterer .NET 6 PGO 100 301.84 ns 1.682 ns 1.405 ns 4.08x slower 0.02x - -
LinqAF .NET 6 PGO 100 768.34 ns 4.311 ns 4.033 ns 10.40x slower 0.06x - -
StructLinq .NET 6 PGO 100 313.83 ns 6.157 ns 5.759 ns 4.25x slower 0.08x 0.0305 64 B
LinqOptimizer .NET 6 PGO 100 683.22 ns 3.084 ns 2.885 ns 9.24x slower 0.04x 0.0114 24 B
Streams .NET 6 PGO 100 670.53 ns 2.890 ns 2.562 ns 9.07x slower 0.04x 0.1717 360 B
StructLinq_ValueDelegate .NET 6 PGO 100 185.45 ns 0.581 ns 0.544 ns 2.51x slower 0.01x - -
Hyperlinq .NET 6 PGO 100 495.31 ns 1.725 ns 1.613 ns 6.70x slower 0.03x - -
Hyperlinq_ValueDelegate .NET 6 PGO 100 312.10 ns 0.639 ns 0.597 ns 4.22x slower 0.01x - -
ForLoop .NET Core 3.1 100 73.88 ns 0.210 ns 0.186 ns baseline - -
ForeachLoop .NET Core 3.1 100 164.75 ns 0.798 ns 0.746 ns 2.23x slower 0.01x - -
Linq .NET Core 3.1 100 892.68 ns 2.612 ns 2.316 ns 12.08x slower 0.03x 0.0153 32 B
LinqFaster .NET Core 3.1 100 275.01 ns 1.308 ns 1.160 ns 3.72x slower 0.02x - -
LinqFasterer .NET Core 3.1 100 267.14 ns 0.442 ns 0.345 ns 3.62x slower 0.01x - -
LinqAF .NET Core 3.1 100 898.17 ns 2.240 ns 1.870 ns 12.16x slower 0.03x - -
StructLinq .NET Core 3.1 100 445.13 ns 1.324 ns 1.239 ns 6.02x slower 0.03x 0.0305 64 B
LinqOptimizer .NET Core 3.1 100 746.42 ns 3.133 ns 2.931 ns 10.10x slower 0.05x 0.0267 56 B
Streams .NET Core 3.1 100 698.29 ns 4.800 ns 4.490 ns 9.45x slower 0.07x 0.1717 360 B
StructLinq_ValueDelegate .NET Core 3.1 100 205.53 ns 0.638 ns 0.597 ns 2.78x slower 0.01x - -
Hyperlinq .NET Core 3.1 100 602.62 ns 2.427 ns 2.270 ns 8.15x slower 0.03x - -
Hyperlinq_ValueDelegate .NET Core 3.1 100 315.17 ns 1.294 ns 1.210 ns 4.27x slower 0.02x - -