Skip to content

Instantly share code, notes, and snippets.

@thegreatco
Created April 17, 2019 16:33
Show Gist options
  • Save thegreatco/d59681f78823372ac6364309f8b5f261 to your computer and use it in GitHub Desktop.
Save thegreatco/d59681f78823372ac6364309f8b5f261 to your computer and use it in GitHub Desktop.
PLINQ Performance in C#
Method Job Runtime Categories Count Mean Error StdDev Ratio RatioSD
WhereIterator Clr Clr Basic Filtering 1000 4.259 us 0.0993 us 0.1486 us 1.59 0.06
ForIterator Clr Clr Basic Filtering 1000 4.016 us 0.0793 us 0.1031 us 1.49 0.05
ForIteratorPreAllocatedList Clr Clr Basic Filtering 1000 3.895 us 0.0453 us 0.0424 us 1.43 0.02
ForIteratorIntoArray Clr Clr Basic Filtering 1000 3.211 us 0.0572 us 0.0535 us 1.19 0.02
ParallelWhereIterator Clr Clr Basic Filtering 1000 12.324 us 0.2461 us 0.3023 us 4.57 0.13
ParallelWhereIteratorWithDegreeOfParallelism4 Clr Clr Basic Filtering 1000 12.002 us 0.2400 us 0.2948 us 4.42 0.11
ParallelWhereIteratorWithDegreeOfParallelism2 Clr Clr Basic Filtering 1000 10.458 us 0.2078 us 0.5793 us 3.83 0.26
ParallelWhereIteratorWithFullyBufferedMergeOptions Clr Clr Basic Filtering 1000 12.440 us 0.1655 us 0.1467 us 4.59 0.06
ParallelWhereIteratorWithNoBufferedMergeOptions Clr Clr Basic Filtering 1000 12.565 us 0.2418 us 0.2262 us 4.63 0.09
WhereIterator Core Core Basic Filtering 1000 2.712 us 0.0200 us 0.0177 us 1.00 0.00
ForIterator Core Core Basic Filtering 1000 4.255 us 0.0454 us 0.0379 us 1.57 0.02
ForIteratorPreAllocatedList Core Core Basic Filtering 1000 3.816 us 0.0156 us 0.0138 us 1.41 0.01
ForIteratorIntoArray Core Core Basic Filtering 1000 3.201 us 0.0671 us 0.0659 us 1.18 0.02
ParallelWhereIterator Core Core Basic Filtering 1000 8.821 us 0.1748 us 0.2822 us 3.27 0.11
ParallelWhereIteratorWithDegreeOfParallelism4 Core Core Basic Filtering 1000 9.195 us 0.1837 us 0.5059 us 3.29 0.10
ParallelWhereIteratorWithDegreeOfParallelism2 Core Core Basic Filtering 1000 7.029 us 0.1645 us 0.1690 us 2.59 0.07
ParallelWhereIteratorWithFullyBufferedMergeOptions Core Core Basic Filtering 1000 8.985 us 0.1744 us 0.2502 us 3.33 0.10
ParallelWhereIteratorWithNoBufferedMergeOptions Core Core Basic Filtering 1000 9.198 us 0.1823 us 0.3640 us 3.53 0.08
WhereIteratorWithTheRightWork Clr Clr CPU Bound Work 1000 77,397.058 us 423.8082 us 375.6949 us 0.96 0.01
ParallelWhereIteratorWithTheRightWork Clr Clr CPU Bound Work 1000 67,157.420 us 1,331.7680 us 1,245.7367 us 0.84 0.01
WhereIteratorWithTheRightWork Core Core CPU Bound Work 1000 80,412.365 us 225.0891 us 199.5356 us 1.00 0.00
ParallelWhereIteratorWithTheRightWork Core Core CPU Bound Work 1000 52,836.807 us 630.6237 us 589.8858 us 0.66 0.01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment