anchor.diff:                                                          selector : Func<'Acc, 'R>) : 'R = 
   
               let seqReduceCount = 
  -                if length > Environment.ProcessorCount then 
  -                    length / Environment.ProcessorCount 
  +                if length > ParallelismHelpers.TotalWorkers then 
  +                    length / ParallelismHelpers.TotalWorkers
                   else
  -                    Environment.ProcessorCount 
  +                    ParallelismHelpers.TotalWorkers
               let rec reduceCombine s e =
                   async { 
                       if e - s <= seqReduceCount then
  
positive.code:                         let! result =  Async.Parallel [| reduceCombine left; reduceCombine right |]
                          return combiner.Invoke(result.[0], result.[1])
                  }
              reduceCombine (partitioner.GetPartitions(Environment.ProcessorCount) |> Seq.toArray) 
              |> Async.RunSynchronously |> selector.Invoke
              
  
negative.code:     open System.Collections.Concurrent
  
      type ParallelismHelpers =
          static member TotalWorkers = int (2.0 ** float (int (Math.Log(float Environment.ProcessorCount, 2.0))))
  
          static member ReduceCombine<'T, 'Acc, 'R>(values : IList<'T>, 
                                                      init : Func<'Acc>, 
  