Lifting sequential graph algorithms for distributed-memory parallel computation

Author:

Gregor Douglas1,Lumsdaine Andrew1

Affiliation:

1. Indiana University, Bloomington, IN

Abstract

This paper describes the process used to extend the Boost Graph Library (BGL) for parallel operation with distributed memory. The BGL consists of a rich set of generic graph algorithms and supporting data structures, but it was not originally designed with parallelism in mind. In this paper, we revisit the abstractions comprising the BGL in the context of distributed-memory parallelism, lifting away the implicit requirements of sequential execution and a single shared address space. We illustrate our approach by describing the process as applied to one of the core algorithms in the BGL, breadth-first search. The result is a generic algorithm that is unchanged from the sequential algorithm, requiring only the introduction of external (distributed) data structures for parallel execution. More importantly, the generic implementation retains its interface and semantics, such that other distributed algorithms can be built upon it, just as algorithms are layered in the sequential case. By characterizing these extensions as well as the extension process, we develop general principles and patterns for using (and reusing) generic, object-oriented parallel software libraries. We demonstrate that the resulting algorithm implementations are both efficient and scalable with performance results for several algorithms.

Publisher

Association for Computing Machinery (ACM)

Subject

Computer Graphics and Computer-Aided Design,Software

Reference34 articles.

1. Erik G. Boman Doruk Bozdag Umit Catalyurek Assefaw H. Gebremedhin and Fredrik Manne. A scalable parallel graph coloring algorithm for distributed memory computers. Preprint.]] Erik G. Boman Doruk Bozdag Umit Catalyurek Assefaw H. Gebremedhin and Fredrik Manne. A scalable parallel graph coloring algorithm for distributed memory computers. Preprint.]]

2. Boost. Boost C++ Libraries. http://www.boost.org/.]] Boost. Boost C++ Libraries. http://www.boost.org/.]]

3. Matrix-Free Methods for Stiff Systems of ODE’s

4. ZPL: a machine independent programming language for parallel computers

Cited by 21 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. iPUG for Multiple Graphcore IPUs: Optimizing Performance and Scalability of Parallel Breadth-First Search;2021 IEEE 28th International Conference on High Performance Computing, Data, and Analytics (HiPC);2021-12

2. iPUG: Accelerating Breadth-First Graph Traversals Using Manycore Graphcore IPUs;Lecture Notes in Computer Science;2021

3. DisGCo;ACM Transactions on Architecture and Code Optimization;2020-12-31

4. High-Performance Graph Data Management and Mining in Cloud Environments with X10;Computer Communications and Networks;2017

5. Signal/Collect12;Semantic Web;2016-02-12

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3