It finds curve intersections in a branch with no curves, or to be more preccise, it fills an empty branch and screws up the subsequent data scructure, as exemplified here :
I have found the same problem, and it took me a while to figure out that it was a parallel processing problem. I couldn’t figure out the logic behind the tree that I get with parallel computing.
Regarding the time of computation, you should only be using parallel computation if you are doing a large number of curve intersections. Otherwise it will take longer than linear processing. If you are proficient with trees and sorting your data into branches you can significantly reduce the need for all against all comparisons.