2011
DOI: 10.1145/1993316.1993501
|View full text |Cite
|
Sign up to set email alerts
|

The tao of parallelism in algorithms

Abstract: For more than thirty years, the parallel programming community has used the dependence graph as the main abstraction for reasoning about and exploiting parallelism in "regular" algorithms that use dense arrays, such as finite-differences and FFTs. In this paper, we argue that the dependence graph is not a suitable abstraction for algorithms in new application areas like machine learning and network analysis in which the key data structures are "irregular" data structures like graphs, trees, and sets.To address… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

1
184
0

Year Published

2015
2015
2018
2018

Publication Types

Select...
5
1

Relationship

0
6

Authors

Journals

citations
Cited by 215 publications
(188 citation statements)
references
References 64 publications
1
184
0
Order By: Relevance
“…Programs leverage Swarm's execution model to convey new work to hardware as soon as it is discovered rather than in the order it needs to run, exposing a large amount of parallelism. As a result, Swarm achieves order-of-magnitude speedups on ordered irregular programs, which are key in emerging domains such as graph analytics, data mining, and in-memory databases [34,55,71]. Swarm hardware could also support thread-level speculation and transactional execution with minimal changes.…”
Section: Discussionmentioning
confidence: 99%
See 3 more Smart Citations
“…Programs leverage Swarm's execution model to convey new work to hardware as soon as it is discovered rather than in the order it needs to run, exposing a large amount of parallelism. As a result, Swarm achieves order-of-magnitude speedups on ordered irregular programs, which are key in emerging domains such as graph analytics, data mining, and in-memory databases [34,55,71]. Swarm hardware could also support thread-level speculation and transactional execution with minimal changes.…”
Section: Discussionmentioning
confidence: 99%
“…Applications with ordered irregular parallelism have three main characteristics [33,55]. First, they consist of tasks that must follow a total or partial order.…”
Section: Motivation 21 Ordered Irregular Parallelismmentioning
confidence: 99%
See 2 more Smart Citations
“…This classification contains twelve categories such as graph algorithms, sparse or dense matrix, dynamic programming and so on. In [130], a similar classification was given with more detailed features. In both papers, the idea is to provide efficient libraries (or patterns) to solve each elementary problem on specific computing system.…”
Section: Applicationsmentioning
confidence: 99%