dotnet/corefx — pull request #112 by PatrickMcDonald (2014-11-17 19:31:41+00:00)
Title: Call ImmutableList<T>.AddRange from ConvertAll and FindAll

There are 2 more places where we can benefit from the performance optimization in ImmutableList.AddRange

My benchmarking shows the following results:

Benchmarking FindAll:
Using random seed -1979800607
Optimized; iterations: 20; Time: 00:00:00.3338650
Original; iterations: 20; Time: 00:00:00.7364930

Benchmarking ConvertAll:
Using random seed -1967300607
Optimized; iterations: 20; Time: 00:00:00.3541609
Original; iterations: 20; Time: 00:00:01.2586320

(Benchmark code is here: https://github.com/PatrickMcDonald/corefx/tree/immutablelist-addrange-refactor-perf)