Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmark request #3

Open
jackmott opened this issue Apr 17, 2017 · 2 comments
Open

Benchmark request #3

jackmott opened this issue Apr 17, 2017 · 2 comments

Comments

@jackmott
Copy link
Owner

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
Copy link
Owner Author

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

@Smurf-IV
Copy link

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants