Abstract

Graphs are a key form of Big Data. Although graph computing technology has been studied extensively in recent years, it remains a grand challenge to process large-scale graphs efficiently. Computation on a graph is to propagate and update the vertex values systematically. Both its complexity and parallelism are affected mainly by the algorithm's value propagating pattern. Efficient graph computing depends on techniques compatible with the algorithm's value propagating pattern. Graph traversing is a value propagating pattern used by representative graph applications. This paper presents an efficient value propagating framework for large-scale graph traversing applications. By partitioning the input graph based on the topology, it allows values for different source vertices to be propagated together, so as to reduce value propagating overhead. To improve the parallel efficiency of graph traversals, a novel task scheduling mechanism has been devised. The mechanism allows the framework to improve load balance without loss of locality. A prototype for the framework has been implemented. We evaluated the prototype with a set of typical real-world and synthetic graphs. By comparing with the owner-computing rule, experimental results show that this work has an overall speedup from 1.23 to 3.97. The speedup to Ligra is from 4.7 to 20.7.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.