Hello Nick,
Oops, I attach it again.
Anyway, I am using an bidirectional adjacency list, because I need to
know the in_edges.
typedef boost::adjacency_list
On Mar 8, 2013, at 10:27 AM, bminano wrote:
Hello,
I need help. I have a distributed graph with a distributed property map for an edge value. The problem is that the synchronize procedure does not synchronize my ghost edges values.
I have a loop that reads from the property, synchronizes, modifies its value and synchronizes it. What I see is that the value is not being synchronized for the ghost edges.
for (int t = 0; t < 2; t++) { myfile<
BGL_FORALL_VERTICES(v, g, Graph) { for (boost::tie(ei_i,edge_end_i) = in_edges(v, g); ei_i != edge_end_i; ++ei_i) { remote_key_e k(rank, *ei_i); myfile<<"value "<<d_index[source(*ei_i, g)]<<" -> "<
synchronize(d_ecash); BGL_FORALL_VERTICES(v, g, Graph) { for (boost::tie(ei,edge_end) = out_edges(v, g); ei != edge_end; ++ei) { remote_key_e k(rank, *ei); put(d_ecash, k, t + 1); } } synchronize(d_ecash); }
Could anyone tell me what I am doing wrong? I attach the full code if someone want to look at them.
<nabble_a href="sync.cpp">sync.cpp Your mail client seems to have mangled your code pretty badly and I don't see an attachment, but the first question would be what graph type are you using? If you're using the undirected graph then there's no support in the PBGL for automatically synchronizing the values between the two local copies of the edge stored at the owner of the source and target vertex respectively. It could be added but would require O(E) additional storage to map from an edge to it's corresponding anti-edge as well as some additional communication to update both copies (the complexity of which would vary depending on the consistency model you wanted to support).
Cheers, Nick _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- Un saludo, Borja Miñano IAC3 - Universitat de les Illes Balears ParcBit - Edifici 17 (Disset); Local D7 Cra. Valldemossa km. 7,4 E-07121 Palma de Mallorca. Balears. Spain. Phone: +34 871 967 434