Ordered vs. unordered: a comparison of parallelism and work-efficiency in irregular algorithms
Acm Sigplan Notices, 2011•dl.acm.org
Outside of computational science, most problems are formulated in terms of irregular data
structures such as graphs, trees and sets. Unfortunately, we understand relatively little about
the structure of parallelism and locality in irregular algorithms. In this paper, we study
multiple algorithms for four such problems: discrete-event simulation, single-source shortest
path, breadth-first search, and minimal spanning trees. We show that the algorithms can be
classified into two categories that we call unordered and ordered, and demonstrate …
structures such as graphs, trees and sets. Unfortunately, we understand relatively little about
the structure of parallelism and locality in irregular algorithms. In this paper, we study
multiple algorithms for four such problems: discrete-event simulation, single-source shortest
path, breadth-first search, and minimal spanning trees. We show that the algorithms can be
classified into two categories that we call unordered and ordered, and demonstrate …
Outside of computational science, most problems are formulated in terms of irregular data structures such as graphs, trees and sets. Unfortunately, we understand relatively little about the structure of parallelism and locality in irregular algorithms. In this paper, we study multiple algorithms for four such problems: discrete-event simulation, single-source shortest path, breadth-first search, and minimal spanning trees. We show that the algorithms can be classified into two categories that we call unordered and ordered, and demonstrate experimentally that there is a trade-off between parallelism and work efficiency: unordered algorithms usually have more parallelism than their ordered counterparts for the same problem, but they may also perform more work. Nevertheless, our experimental results show that unordered algorithms typically lead to more scalable implementations, demonstrating that less work-efficient irregular algorithms may be better for parallel execution.

Showing the best result for this search. See all results