Skip to content

Latest commit

 

History

History
65 lines (59 loc) · 8.96 KB

ImmutableArray.Int32.ImmutableArrayInt32Select.md

File metadata and controls

65 lines (59 loc) · 8.96 KB

ImmutableArray.Int32.ImmutableArrayInt32Select

Source

ImmutableArrayInt32Select.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 Count Mean Error StdDev Ratio RatioSD Gen 0 Allocated
ForLoop .NET 6 Empty .NET 6.0 100 60.56 ns 0.098 ns 0.087 ns baseline - -
ForeachLoop .NET 6 Empty .NET 6.0 100 60.26 ns 0.063 ns 0.056 ns 1.01x faster 0.00x - -
Linq .NET 6 Empty .NET 6.0 100 720.91 ns 2.258 ns 2.002 ns 11.90x slower 0.03x 0.0229 48 B
LinqFasterer .NET 6 Empty .NET 6.0 100 826.86 ns 1.139 ns 1.066 ns 13.65x slower 0.03x 0.4320 904 B
LinqOptimizer .NET 6 Empty .NET 6.0 100 2,666.10 ns 10.511 ns 9.318 ns 44.02x slower 0.15x 4.2534 8,898 B
Streams .NET 6 Empty .NET 6.0 100 2,326.74 ns 4.033 ns 3.575 ns 38.42x slower 0.06x 0.2899 608 B
StructLinq .NET 6 Empty .NET 6.0 100 227.71 ns 0.208 ns 0.185 ns 3.76x slower 0.01x 0.0153 32 B
StructLinq_ValueDelegate .NET 6 Empty .NET 6.0 100 176.02 ns 0.118 ns 0.104 ns 2.91x slower 0.00x - -
Hyperlinq .NET 6 Empty .NET 6.0 100 251.30 ns 0.449 ns 0.375 ns 4.15x slower 0.01x - -
Hyperlinq_ValueDelegate .NET 6 Empty .NET 6.0 100 193.80 ns 0.133 ns 0.111 ns 3.20x slower 0.01x - -
ForLoop .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 61.67 ns 0.088 ns 0.078 ns baseline - -
ForeachLoop .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 61.93 ns 0.082 ns 0.073 ns 1.00x slower 0.00x - -
Linq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 378.20 ns 1.111 ns 0.928 ns 6.13x slower 0.01x 0.0229 48 B
LinqFasterer .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 496.49 ns 0.749 ns 0.585 ns 8.05x slower 0.01x 0.4320 904 B
LinqOptimizer .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 2,365.00 ns 14.159 ns 13.245 ns 38.37x slower 0.21x 4.2534 8,898 B
Streams .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 1,586.65 ns 2.729 ns 2.279 ns 25.73x slower 0.05x 0.2899 608 B
StructLinq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 224.88 ns 1.149 ns 0.960 ns 3.65x slower 0.01x 0.0153 32 B
StructLinq_ValueDelegate .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 179.04 ns 0.096 ns 0.075 ns 2.90x slower 0.00x - -
Hyperlinq .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 254.67 ns 0.330 ns 0.292 ns 4.13x slower 0.01x - -
Hyperlinq_ValueDelegate .NET 6 PGO DOTNET_ReadyToRun=0,DOTNET_TC_QuickJitForLoops=1,DOTNET_TieredPGO=1 .NET 6.0 100 198.53 ns 0.116 ns 0.097 ns 3.22x slower 0.00x - -
ForLoop .NET Core 3.1 Empty .NET Core 3.1 100 60.68 ns 0.098 ns 0.082 ns baseline - -
ForeachLoop .NET Core 3.1 Empty .NET Core 3.1 100 69.97 ns 1.239 ns 1.377 ns 1.16x slower 0.03x - -
Linq .NET Core 3.1 Empty .NET Core 3.1 100 793.78 ns 2.897 ns 2.568 ns 13.09x slower 0.04x 0.0229 48 B
LinqFasterer .NET Core 3.1 Empty .NET Core 3.1 100 772.88 ns 1.873 ns 1.564 ns 12.74x slower 0.02x 0.4320 904 B
LinqOptimizer .NET Core 3.1 Empty .NET Core 3.1 100 2,656.65 ns 9.240 ns 8.643 ns 43.77x slower 0.15x 4.2610 8,928 B
Streams .NET Core 3.1 Empty .NET Core 3.1 100 2,166.62 ns 3.311 ns 2.765 ns 35.71x slower 0.06x 0.2899 608 B
StructLinq .NET Core 3.1 Empty .NET Core 3.1 100 546.96 ns 0.664 ns 0.589 ns 9.02x slower 0.01x 0.0153 32 B
StructLinq_ValueDelegate .NET Core 3.1 Empty .NET Core 3.1 100 320.63 ns 0.477 ns 0.399 ns 5.28x slower 0.01x - -
Hyperlinq .NET Core 3.1 Empty .NET Core 3.1 100 281.46 ns 0.288 ns 0.270 ns 4.64x slower 0.01x - -
Hyperlinq_ValueDelegate .NET Core 3.1 Empty .NET Core 3.1 100 202.55 ns 0.533 ns 0.445 ns 3.34x slower 0.01x - -