gear
gear copied to clipboard
Make `par_iter()` from `rayon` work with authorship tests
Rayon provides high level abstractions for running code in parallel which fits nicely in our block authorship tests approach.
However, for some reason the par_iter(test) gets increasingly slow with growing number of tests run in parallel (up to the point that it never halts at all). Whether it is due to a shared global state we have introduced for authorship tests to deal with redundant allocations or some other data racing - we need to look deeper into it.
Generally, it seems a better approach than manually spawning threads with std::thread, provided it works.