hama-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Edward J. Yoon (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HAMA-897) Performance improvement of graph processing using background threads
Date Tue, 08 Apr 2014 08:15:27 GMT
Edward J. Yoon created HAMA-897:
-----------------------------------

             Summary: Performance improvement of graph processing using background threads
                 Key: HAMA-897
                 URL: https://issues.apache.org/jira/browse/HAMA-897
             Project: Hama
          Issue Type: Improvement
          Components: graph
    Affects Versions: 0.6.4
            Reporter: Edward J. Yoon
             Fix For: 0.7.0


Each GraphJobRunner (BSPTask) calls vertex.compute() method sequentially in a while loop:

{code}
    while (iterator.hasNext(
        currentMessage == null ? null : (V) currentMessage.getVertexId(),
        Strategy.ALL)) {

      vertex = iterator.next();
      if (currentMessage != null) {
        iterable = iterate(currentMessage, (V) currentMessage.getVertexId(),
            vertex, peer);
      }

      if (iterable != null && vertex.isHalted()) {
        vertex.setActive();
      }

      if (!vertex.isHalted()) {
        if (iterable == null) {
          vertex.compute(Collections.<M> emptyList());
        } else {
          vertex.compute(iterable);
          currentMessage = iterable.getOverflowMessage();
        }
        activeVertices++;
      }

      // note that we even need to rewrite the vertex if it is halted for
      // consistency reasons
      vertices.finishVertexComputation(vertex);
    }
{code}

I might be wrong but I'm sure we can improve the performance using the background threads.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message