Quick question: which functions/methods support OMP in graph-tool?
Whenever a function supports OpenMP, it is said in the documentation. For example, the docstring of
If enabled during compilation, this algorithm runs in parallel.
If no statement of this kind exists, then the function runs only serially.
So, for example, nothing that deals with MCMC has support for parallel execution. I know I knocked on this once, when I was asking for GPU support. You answered that the MCMC part would be quite difficult to parallelize. I was looking around and stumbled into this
Do you think that something similar could be introduced in graph-tool?
This is a difficult problem. MCMC parallelization only works cleanly when the posterior factorizes. Otherwise, there is a shared global state, and trivial parallelization becomes impossible. There are possible heuristic ways to move forward, but no clear solution. This is something that is always on my mind, but I currently don’t know yet how to solve well.