On 11/21/2013 11:04 PM, Tasos wrote:
Without a machine to check I just have a couple of comments.
The fix will probably (in git) kill a lot of speed. Based on my test with big graphs that a race will happen, i fixed it wih:
you just need to wrap only the "update_centrality()" functions (both vertex and edge) and one function further down, "divide_dy_two" near the "if_undirected".
I don't think so... Making several entries into a critical omp region will make things very slow. Furthermore most of the time is spent finding the shortest paths, which is outside the critical region.
The "divide_by_two" operation at the end is outside the parallel region, so it does not need to be protected.
Cheers, Tiago