Avery Ching commented on GIRAPH-28:

I certainly agree that providing interfaces that reduce memory consumption on 
the edges makes a lot of sense (thanks for the evidence).

For supporting the all the implementations (especially primitive arrays 
implementation), perhaps 

Iterator<Edge<I, E>> getOutEdgeIterator();

(Similar to the Pregel API makes sense).  This would be easy to support with 
primitive arrays.  Additionally, your suggested interfaces also make sense 
(slight modifications).

E getEdgeValue(I targetVertexId);
boolean removeEdge(I targetVertexId);
Iterator<Edge<I, E>> getSortedOutEdgeIterator();

What do you/others think?  We should get others to weigh in as well, especially 
since it's a user facing API.

> Introduce new primitive-specific MutableVertex subclasses
> ---------------------------------------------------------
>                 Key: GIRAPH-28
>                 URL: https://issues.apache.org/jira/browse/GIRAPH-28
>             Project: Giraph
>          Issue Type: New Feature
>          Components: graph
>    Affects Versions: 0.70.0
>            Reporter: Jake Mannix
>            Assignee: Jake Mannix
>         Attachments: GIRAPH-28.diff
> As discussed on the list, 
> MutableVertex<LongWritable,DoubleWritable,FloatWritable,DoubleWritable> (for 
> example) could be highly optimized in its memory footprint if the vertex and 
> edge data were held in a form which minimized Java object usage.

This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to