Affiliation:
1. Carnegie Mellon University, Pittsburgh, PA, USA
Abstract
There has been significant recent interest in parallel frameworks for processing graphs due to their applicability in studying social networks, the Web graph, networks in biology, and unstructured meshes in scientific simulation. Due to the desire to process large graphs, these systems have emphasized the ability to run on distributed memory machines. Today, however, a single multicore server can support more than a terabyte of memory, which can fit graphs with tens or even hundreds of billions of edges. Furthermore, for graph algorithms, shared-memory multicores are generally significantly more efficient on a per core, per dollar, and per joule basis than distributed memory systems, and shared-memory algorithms tend to be simpler than their distributed counterparts.
In this paper, we present a lightweight graph processing framework that is specific for shared-memory parallel/multicore machines, which makes graph traversal algorithms easy to write. The framework has two very simple routines, one for mapping over edges and one for mapping over vertices. Our routines can be applied to any subset of the vertices, which makes the framework useful for many graph traversal algorithms that operate on subsets of the vertices. Based on recent ideas used in a very fast algorithm for breadth-first search (BFS), our routines automatically adapt to the density of vertex sets. We implement several algorithms in this framework, including BFS, graph radii estimation, graph connectivity, betweenness centrality, PageRank and single-source shortest paths. Our algorithms expressed using this framework are very simple and concise, and perform almost as well as highly optimized code. Furthermore, they get good speedups on a 40-core machine and are significantly more efficient than previously reported results using graph frameworks on machines with many more cores.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
500 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. StarPlat: A versatile DSL for graph analytics;Journal of Parallel and Distributed Computing;2024-12
2. MST: Topology-Aware Message Aggregation for Exascale Graph Processing of Traversal-Centric Algorithms;ACM Transactions on Architecture and Code Optimization;2024-07-03
3. DRackSim: Simulating CXL-enabled Large-Scale Disaggregated Memory Systems;Proceedings of the 38th ACM SIGSIM Conference on Principles of Advanced Discrete Simulation;2024-06-24
4. Multi Bucket Queues: Efficient Concurrent Priority Scheduling;Proceedings of the 36th ACM Symposium on Parallelism in Algorithms and Architectures;2024-06-17
5. Accelerating Graph Analytics Using Attention-Based Data Prefetcher;SN Computer Science;2024-06-13