Affiliation:
1. Department of CSA, Indian Institute of Science, Bangalore, India
2. Department of CSE, Indian Institute of Technology, Madras, India
Abstract
Graph algorithms have been shown to possess enough parallelism to keep several computing resources busy—even hundreds of cores on a GPU. Unfortunately, tuning their implementation for efficient execution on a particular hardware configuration of heterogeneous systems consisting of multicore CPUs and GPUs is challenging, time consuming, and error prone. To address these issues, we propose a domain-specific language (DSL), Falcon, for implementing graph algorithms that (i) abstracts the hardware, (ii) provides constructs to write explicitly parallel programs at a higher level, and (iii) can work with general algorithms that may change the graph structure (morph algorithms). We illustrate the usage of our DSL to implement local computation algorithms (that do not change the graph structure) and morph algorithms such as Delaunay mesh refinement, survey propagation, and dynamic SSSP on GPU and multicore CPUs. Using a set of benchmark graphs, we illustrate that the generated code performs close to the state-of-the-art hand-tuned implementations.
Publisher
Association for Computing Machinery (ACM)
Subject
Hardware and Architecture,Information Systems,Software
Cited by
12 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. A Multi-target, Multi-paradigm DSL Compiler for Algorithmic Graph Processing;Proceedings of the 15th ACM SIGPLAN International Conference on Software Language Engineering;2022-11-29
2. iTurboGraph;Proceedings of the 2021 International Conference on Management of Data;2021-06-09
3. Custom code generation for a graph DSL;Proceedings of the 13th Annual Workshop on General Purpose Processing using Graphics Processing Unit;2020-02-19
4. Distributed Graph Analytics;Distributed Computing and Internet Technology;2019-12-09
5. HyPar: A divide-and-conquer model for hybrid CPU–GPU graph processing;Journal of Parallel and Distributed Computing;2019-10