Boost logo

Boost :

Subject: Re: [boost] Boost Parallel Graph Library: remove_vertex gives unexpected results
From: Alok Kumbhare (kumbhare_at_[hidden])
Date: 2014-04-09 14:36:29


Hi All,
Can anyone please help me with this. Please let me know if you need any
more information. I can also provide remote access if you need access to an
environment with everything setup to test.

Thanks,
Alok

On Tue, Apr 8, 2014 at 11:42 AM, Alok Kumbhare <kumbhare_at_[hidden]> wrote:

> Hi All,
> i need some help with parallel boost graph library. Sorry if this is not
> the right list to post. Posting here since it looks like it might be a but.
>
> In particular, i am trying to modify the structure of the graph
> (distributed adjacency list) after it is loaded. The code snippet is at
> http://pastebin.com/erizQ0Sf.
>
> The problem is that clear_vertex(v,g) and remove_vertex(v,g) does not seem
> to operate on the same vertex in the graph.
>
> Here is a sample graph in metis format: http://pastebin.com/qxy2w6aw (I
> use the default vertex distribution for this example)
>
> The graph_viz output is available here for different scenarios:
>
> https://onedrive.live.com/redir?resid=C3CDB6EFBD31B4A8!20818&authkey=!AJqEFl3B71RMcaM&v=3&ithint=photo%2c.png>
>
> As you can see in the above figure:
>
> The first image is the original graph split into two partitions (mpirun
> -np 2 ./test)
>
> The second image is after clear_vertex is called for one of the vertices.
> Notice vertex "0". All the edges are removed as expected.
>
> The third image is after remove_vertex is called (which is called after
> clear_vertex, as mentioned in the documentation here:
>
http://www.boost.org/doc/libs/1_55_0/libs/graph_parallel/doc/html/distributed_adjacency_list.html#structure-modification).
> Notice here that the vertex "2" is removed instead of vertex "0" even when
> using the same vertex descriptor for both calls.
>
> One thing i noted is that the remove_vertex seems to remove the "last"
> vertex in that partition irrespective of the input. e.g. if i use v =
> vertex(1,g) in the above code, i still see that the vertex "2" is removed
> and the edges rearranged for that.
>
> Is this a bug or am i doing something wrong.
>
> Your help will be greatly appreciated.
>
> Thanks,
> Alok Kumbhare
>


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk