2015
DOI: 10.1145/2688905
|View full text |Cite
|
Sign up to set email alerts
|

Using Template Matching to Infer Parallel Design Patterns

Abstract: The triumphant spread of multicore processors over the past decade increases the pressure on software developers to exploit the growing amount of parallelism available in the hardware. However, writing parallel programs is generally challenging. For sequential programs, the formulation of design patterns marked a turning point in software development, boosting programmer productivity and leading to more reusable and maintainable code. While the literature is now also reporting a rising number of parallel desig… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

1
10
0

Year Published

2015
2015
2022
2022

Publication Types

Select...
3
2
1

Relationship

2
4

Authors

Journals

citations
Cited by 18 publications
(11 citation statements)
references
References 30 publications
1
10
0
Order By: Relevance
“…Also, in [1], the authors use parallel design patterns to develop efficient, maintainable, and portable parallel applications. Designers can develop parallel applications using refactoring approaches based on well-understood high-level parallel design patterns as in the ParaPhrase project [30] and [32]. In the DiscoPoP project [18], different parallel patterns such as pipeline are detected to parallelize sequential programs.…”
Section: Motivation For Classifying Parallel Patternsmentioning
confidence: 99%
See 1 more Smart Citation
“…Also, in [1], the authors use parallel design patterns to develop efficient, maintainable, and portable parallel applications. Designers can develop parallel applications using refactoring approaches based on well-understood high-level parallel design patterns as in the ParaPhrase project [30] and [32]. In the DiscoPoP project [18], different parallel patterns such as pipeline are detected to parallelize sequential programs.…”
Section: Motivation For Classifying Parallel Patternsmentioning
confidence: 99%
“…In [32], the authors detect potential pipeline and do-all parallel patterns from sequential applications by using template matching technique. However, we detect six parallel patterns including task parallel and geometric decomposition in parallel multi-threaded application.…”
Section: Parallel Pattern Detectionmentioning
confidence: 99%
“…To support parallel pattern detection [82,83], DiscoPoP profiler also produces the Program Execution Tree (PET). We construct a PET using the following information obtained from both static analyses and profiling data:…”
Section: Control Structure Informationmentioning
confidence: 99%
“…Such features allow the straightforward application of pattern matching technique to detect parallel patterns. Details about parallel pattern detection is introduced in related work [82,83].…”
Section: Control Structure Informationmentioning
confidence: 99%
“…In our previous work, an overview of our toolset DiscoPoP is provided, which includes the evaluation of the dynamic profiler with respect to its performance and memory consumption. In addition, our previous work also discusses the use of CUs to identify parallel patterns in existing sequential code that is discussed in greater detail in our other works . In our previous works, we focus on task parallelism within larger computations and functions, and identification of CUs using a different method with Use‐Definition Chain (UD Chain).…”
Section: Introductionmentioning
confidence: 99%