Title
Parallelizing irregular algorithms: a pattern language.
Abstract
Outside of the high-performance computing domain, many applications are irregular in the sense that opportunities to exploit parallelism change throughout the computation, due to the use of complex, pointer-based data structures such as lists and graphs. However, the parallel programming community has relatively little experience in parallelizing irregular applications, and we presently lack a deep understanding of the structure of parallelism and locality in the algorithms that underlie these applications. In this context, irregular algorithms pose a challenging problem to current parallelization methods and techniques. In recent years, the Galois project has proposed an approach for parallelizing irregular algorithms and applications that is based on a small set of simple abstractions. In this paper, we describe the Galois approach by means of a pattern language for parallel programming, thereby highlighting the key features of this approach, and elucidating more generally the concurrency patterns in irregular algorithms.
Year
DOI
Venue
2011
10.1145/2578903.2579141
PLoP
Keywords
Field
DocType
parallelism change,current parallelization method,parallel programming,pattern language,irregular algorithm,irregular application,parallel programming community,challenging problem,galois project,concurrency pattern,galois approach,reverse engineering
Data structure,Pointer (computer programming),Locality,Concurrency,Computer science,Parallel computing,Reverse engineering,Algorithm,Theoretical computer science,Exploit,Pattern language,Computation
Conference
Citations 
PageRank 
References 
1
0.36
33
Authors
3
Name
Order
Citations
PageRank
Pedro Monteiro1217.49
Miguel P. Monteiro217012.70
Keshav Pingali33056256.64