giraph-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavan Kumar (JIRA)" <>
Subject [jira] [Commented] (GIRAPH-874) Specialized byte array partitions
Date Mon, 09 Jun 2014 01:46:02 GMT


Pavan Kumar commented on GIRAPH-874:

well as u can see, there is a lot of un-necessary code duplication between the classes. It
could be abstracted out much nicely.
[~cmartella] pl commit it by verifying correctness for now.
it can be refactored later, 
I found a nice abstraction for GIRAPH-873 as well which looks much better than current implementation
which is already committed.
So creating a task for future, I'll complete it when I find time.

> Specialized byte array partitions
> ---------------------------------
>                 Key: GIRAPH-874
>                 URL:
>             Project: Giraph
>          Issue Type: Improvement
>          Components: graph
>    Affects Versions: 1.1.0
>            Reporter: Craig Muchinsky
>         Attachments: GIRAPH-874-2.patch, GIRAPH-874.patch
> While doing some performance tuning I discovered that loading byte array partitions was
performing slower than expected. I found that the extra time was being spent allocating a
new vertex object for each distinct vertexId encountered (because vertexId object is the map
key). Similar to GIRAPH-704, the use of primitive maps can provide significant performance
benefit in this situation. By using a primitive map, the vertex object on the VertexIterator
can be reused perpetually because the vertexId object isn't used as the map key.
> When processing a large graph with 4B vertices the worker vertices requests were taking
~15 seconds each, but after implementing the above suggestion that number dropped down sub-second.

This message was sent by Atlassian JIRA

View raw message