Right now the support for OpenMP has a lot of overhead, to the extent that it is counterproductive to enable it when we precompute probabilities. This is potentially due to
- the xoshiro RNG which is not thread safe, and thus requires producing a matrix of random numbers in advance on a single thread
- the fact that updating the state change matrix needs blocking
This should be fixed. This needs some thinking also to not make the code full of cryptic #pragmas.
Right now the support for OpenMP has a lot of overhead, to the extent that it is counterproductive to enable it when we precompute probabilities. This is potentially due to
This should be fixed. This needs some thinking also to not make the code full of cryptic #pragmas.