Spatial hardware implementation for sparse graph algorithms in GraphStep

How do we develop programs that are easy to express, easy to reason about, and able to achieve high performance on massively parallel machines? To address this problem, we introduce GraphStep, a domain-specific compute model that captures algorithms that act on static, irregular, sparse graphs. In G...

Full description

Saved in:
Bibliographic Details
Main Authors: Delorimier, Michael, Kapre, Nachiket, Mehta, Nikil, Dehon, André
Other Authors: School of Computer Engineering
Format: Article
Language:English
Published: 2015
Subjects:
Online Access:https://hdl.handle.net/10356/81195
http://hdl.handle.net/10220/39184
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-81195
record_format dspace
spelling sg-ntu-dr.10356-811952020-05-28T07:19:13Z Spatial hardware implementation for sparse graph algorithms in GraphStep Delorimier, Michael Kapre, Nachiket Mehta, Nikil Dehon, André School of Computer Engineering Languages Spatial computing Compute model Algorithms Performance Parallel programming Graph algorithm graphStep How do we develop programs that are easy to express, easy to reason about, and able to achieve high performance on massively parallel machines? To address this problem, we introduce GraphStep, a domain-specific compute model that captures algorithms that act on static, irregular, sparse graphs. In GraphStep, algorithms are expressed directly without requiring the programmer to explicitly manage parallel synchronization, operation ordering, placement, or scheduling details. Problems in the sparse graph domain are usually highly concurrent and communicate along graph edges. Exposing concurrency and communication structure allows scheduling of parallel operations and management of communication that is necessary for performance on a spatial computer. We study the performance of a semantic network application, a shortest-path application, and a max-flow/min-cut application. We introduce a language syntax for GraphStep applications. The total speedup over sequential versions of the applications studied ranges from a factor of 19 to a factor of 15,000. Spatially-aware graph optimizations (e.g., node decomposition, placement and route scheduling) delivered speedups from 3 to 30 times over a spatially-oblivious mapping. 2015-12-21T04:57:12Z 2019-12-06T14:23:22Z 2015-12-21T04:57:12Z 2019-12-06T14:23:22Z 2011 Journal Article Delorimier, M., Kapre, N., Mehta, N., & Dehon, A. (2011). Spatial hardware implementation for sparse graph algorithms in GraphStep. ACM Transactions on Autonomous and Adaptive Systems, 6(3), 1-20. 1556-4665 https://hdl.handle.net/10356/81195 http://hdl.handle.net/10220/39184 10.1145/2019583.2019584 en ACM Transactions on Autonomous and Adaptive Systems © 2011 Association for Computing Machinery (ACM). 20 p.
institution Nanyang Technological University
building NTU Library
country Singapore
collection DR-NTU
language English
topic Languages
Spatial computing
Compute model
Algorithms
Performance
Parallel programming
Graph algorithm
graphStep
spellingShingle Languages
Spatial computing
Compute model
Algorithms
Performance
Parallel programming
Graph algorithm
graphStep
Delorimier, Michael
Kapre, Nachiket
Mehta, Nikil
Dehon, André
Spatial hardware implementation for sparse graph algorithms in GraphStep
description How do we develop programs that are easy to express, easy to reason about, and able to achieve high performance on massively parallel machines? To address this problem, we introduce GraphStep, a domain-specific compute model that captures algorithms that act on static, irregular, sparse graphs. In GraphStep, algorithms are expressed directly without requiring the programmer to explicitly manage parallel synchronization, operation ordering, placement, or scheduling details. Problems in the sparse graph domain are usually highly concurrent and communicate along graph edges. Exposing concurrency and communication structure allows scheduling of parallel operations and management of communication that is necessary for performance on a spatial computer. We study the performance of a semantic network application, a shortest-path application, and a max-flow/min-cut application. We introduce a language syntax for GraphStep applications. The total speedup over sequential versions of the applications studied ranges from a factor of 19 to a factor of 15,000. Spatially-aware graph optimizations (e.g., node decomposition, placement and route scheduling) delivered speedups from 3 to 30 times over a spatially-oblivious mapping.
author2 School of Computer Engineering
author_facet School of Computer Engineering
Delorimier, Michael
Kapre, Nachiket
Mehta, Nikil
Dehon, André
format Article
author Delorimier, Michael
Kapre, Nachiket
Mehta, Nikil
Dehon, André
author_sort Delorimier, Michael
title Spatial hardware implementation for sparse graph algorithms in GraphStep
title_short Spatial hardware implementation for sparse graph algorithms in GraphStep
title_full Spatial hardware implementation for sparse graph algorithms in GraphStep
title_fullStr Spatial hardware implementation for sparse graph algorithms in GraphStep
title_full_unstemmed Spatial hardware implementation for sparse graph algorithms in GraphStep
title_sort spatial hardware implementation for sparse graph algorithms in graphstep
publishDate 2015
url https://hdl.handle.net/10356/81195
http://hdl.handle.net/10220/39184
_version_ 1681056739709943808