You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hama.apache.org by "Edward J. Yoon (JIRA)" <ji...@apache.org> on 2014/12/29 09:53:13 UTC

[jira] [Updated] (HAMA-919) Manage messages per Vertex

     [ https://issues.apache.org/jira/browse/HAMA-919?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Edward J. Yoon updated HAMA-919:
--------------------------------
    Attachment: HAMA-919_v01.patch

Basically, Graph module needed to manage the messages (received from other Peers) per VertexID. We insisted on using of default message queue<M> implementation of BSP core module, and we wrote really bad code. :/

By adding custom outgoing/incoming message manager for graph module, I was able to get rid of the overheads of sorting and grouping messages by vertexID, and pickuping non-vertex messages e.g., aggregator values from the queue.

Everything should be rewritten based on this. 

> Manage messages per Vertex
> --------------------------
>
>                 Key: HAMA-919
>                 URL: https://issues.apache.org/jira/browse/HAMA-919
>             Project: Hama
>          Issue Type: Improvement
>          Components: graph
>    Affects Versions: 0.6.4
>            Reporter: Edward J. Yoon
>            Assignee: Edward J. Yoon
>            Priority: Blocker
>             Fix For: 0.7.0
>
>         Attachments: HAMA-919_v01.patch, test.patch
>
>
> As I described in mailing list, we need to manage the messages per Vertex. 
> Currently, sender-side creates and sends the GraphJobMessage object per each message, receiver-side groups messages by Vertex. To simplify grouping process, we used sorting and sequential processing.
> If we manage the outgoing messages per Vertex, we don't need to use the sorted message queue. So we can improve the memory efficiency and the performance by multi-threading.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)