LinqFaster icon indicating copy to clipboard operation
LinqFaster copied to clipboard

Benchmark request

Open jackmott opened this issue 7 years ago • 2 comments

Smaller List<T>, Sum and Where(x x=>x%2000).Select(x =>x*x)


BenchmarkDotNet=v0.10.3.0, OS=Microsoft Windows NT 6.2.9200.0
Processor=Intel(R) Core(TM) i7-6700 CPU 3.40GHz, ProcessorCount=8
Frequency=3328121 Hz, Resolution=300.4698 ns, Timer=TSC
  [Host]    : Clr 4.0.30319.42000, 64bit RyuJIT-v4.7.2046.0
  RyuJitX64 : Clr 4.0.30319.42000, 64bit RyuJIT-v4.7.2046.0

Job=RyuJitX64  Jit=RyuJit  Platform=X64  

Method TEST_SIZE Mean StdDev Gen 0 Allocated
SumLinq 10 85.1899 ns 0.1173 ns 0.0062 40 B
SumLinqFaster 10 10.1558 ns 0.0872 ns - 0 B
WhereSelect 10 209.9139 ns 0.3424 ns 0.0558 288 B
WhereSelectMinLinqFaster 10 93.0835 ns 0.1782 ns 0.0261 136 B
SumLinq 100 596.9848 ns 0.9774 ns - 40 B
SumLinqFaster 100 90.6256 ns 0.2687 ns - 0 B
WhereSelect 100 1,128.6667 ns 1.4259 ns 0.1450 808 B
WhereSelectMinLinqFaster 100 672.5056 ns 1.2559 ns 0.1301 656 B
SumLinq 1000 5,729.0542 ns 5.9019 ns - 40 B
SumLinqFaster 1000 823.4186 ns 1.4371 ns - 0 B
WhereSelect 1000 9,000.8336 ns 10.6227 ns 0.7039 4.46 kB
WhereSelectMinLinqFaster 1000 5,677.9769 ns 25.0852 ns 0.8392 4.31 kB

jackmott avatar Apr 17 '17 18:04 jackmott

Parallel LinqFaster vs regular Linq Parallel, list of ints


BenchmarkDotNet=v0.10.3.0, OS=Microsoft Windows NT 6.2.9200.0
Processor=Intel(R) Core(TM) i7-6700 CPU 3.40GHz, ProcessorCount=8
Frequency=3328121 Hz, Resolution=300.4698 ns, Timer=TSC
  [Host]    : Clr 4.0.30319.42000, 64bit RyuJIT-v4.7.2046.0
  RyuJitX64 : Clr 4.0.30319.42000, 64bit RyuJIT-v4.7.2046.0

Job=RyuJitX64  Jit=RyuJit  Platform=X64  

Method TEST_SIZE Mean StdDev Gen 0 Allocated
SumLinqParallel 100000 137.2008 us 3.3395 us - 5.03 kB
SumLinqFasterParallel 100000 41.4944 us 3.9871 us 0.7935 4.22 kB
SelectSumLinqParallel 100000 224.9116 us 1.0943 us - 5.22 kB
SelectSumLinqFasterParallel 100000 73.8506 us 5.6800 us - 4.22 kB

jackmott avatar Apr 17 '17 18:04 jackmott

V 1.0.2

BenchmarkDotNet=v0.11.5, OS=Windows 10.0.18362
Intel Core i7-6700 CPU 3.40GHz (Skylake), 1 CPU, 8 logical and 4 physical cores
  [Host]    : .NET Framework 4.7.2 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.8.3815.0
  RyuJitX64 : .NET Framework 4.7.2 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.8.3815.0
Job=RyuJitX64  Jit=RyuJit  Platform=X64  
Method TEST_SIZE Mean Error StdDev Median Gen 0 Gen 1 Gen 2 Allocated
OrderByLinq 1000000 162,875.75 us 2,340.122 us 2,188.952 us 162,460.57 us - - - 12002803 B
OrderByFast 1000000 36,920.62 us 541.421 us 452.111 us 36,783.29 us 133.3333 133.3333 133.3333 8001686 B
SumLinq 1000000 5,453.64 us 61.392 us 57.426 us 5,457.55 us - - - -
SumFast 1000000 619.43 us 9.323 us 8.264 us 618.48 us - - - -
SumFastSIMD 1000000 105.68 us 2.000 us 2.223 us 105.38 us - - - -
AverageLinq 1000000 5,995.03 us 49.164 us 43.583 us 6,003.62 us - - - -
AverageFast 1000000 602.31 us 13.048 us 12.815 us 598.02 us - - - -
AverageFastSIMD 1000000 99.39 us 1.451 us 1.212 us 99.74 us - - - -
SumWithSelectLinq 1000000 6,682.90 us 102.824 us 91.151 us 6,663.52 us - - - -
SumWithSelectFast 1000000 2,116.64 us 24.148 us 22.588 us 2,111.50 us - - - -
WhereAggregateLinq 1000000 5,330.36 us 97.811 us 91.492 us 5,308.65 us - - - 128 B
WhereAggregateFast 1000000 3,503.08 us 38.919 us 36.405 us 3,502.08 us - - - 96 B
SelectFast 1000000 2,794.19 us 54.800 us 83.686 us 2,780.09 us 74.2188 74.2188 74.2188 4000024 B
SelectFastSIMD 1000000 1,986.71 us 124.579 us 367.325 us 2,237.61 us 27.3438 27.3438 27.3438 4000024 B
RepeatLinq 1000000 8,318.49 us 165.551 us 356.366 us 8,302.07 us 234.3750 203.1250 203.1250 12391784 B
RepeastFast 1000000 1,648.23 us 94.708 us 279.248 us 1,589.07 us 23.4375 23.4375 23.4375 4000024 B
RepeastFastSIMD 1000000 1,722.76 us 40.186 us 118.489 us 1,742.97 us 15.6250 15.6250 15.6250 4000024 B
MinLinq 1000000 5,405.62 us 59.997 us 56.121 us 5,397.42 us - - - -
MinFast 1000000 998.92 us 17.777 us 15.759 us 1,000.48 us - - - -
MinFastSIMD 1000000 100.16 us 1.502 us 1.332 us 100.00 us - - - -
SequenceEqual 1000000 13,624.65 us 123.927 us 109.858 us 13,642.31 us - - - -
SequenceEqualF 1000000 2,405.22 us 20.760 us 17.336 us 2,404.19 us - - - -
SequenceEqualP 1000000 825.85 us 15.729 us 19.893 us 823.90 us 0.9766 - - 4376 B
SequenceEqualS 1000000 307.51 us 5.815 us 6.923 us 308.92 us - - - -
SequenceEqualSP 1000000 122.51 us 3.201 us 9.387 us 120.78 us 0.7324 - - 3776 B

Smurf-IV avatar Jul 31 '19 06:07 Smurf-IV