[ https://issues.apache.org/jira/browse/GIRAPH-874?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Craig Muchinsky updated GIRAPH-874: ----------------------------------- Attachment: GIRAPH-874.patch > Specialized byte array partitions > --------------------------------- > > Key: GIRAPH-874 > URL: https://issues.apache.org/jira/browse/GIRAPH-874 > Project: Giraph > Issue Type: Improvement > Components: graph > Affects Versions: 1.1.0 > Reporter: Craig Muchinsky > Fix For: 1.1.0 > > Attachments: 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 (v6.2#6252)