Affiliation:
1. Department of Computer Science, University Carlos III of Madrid, Spain
2. Department of Computer Science, University of Pisa, Italy
Abstract
Since the ‘free lunch’ of processor performance is over, parallelism has become the new trend in hardware and architecture design. However, parallel resources deployed in data centers are underused in many cases, given that sequential programming is still deeply rooted in current software development. To address this problem, new methodologies and techniques for parallel programming have been progressively developed. For instance, parallel frameworks, offering programming patterns, allow expressing concurrency in applications to better exploit parallel hardware. Nevertheless, a large portion of production software, from a broad range of scientific and industrial areas, is still developed sequentially. Considering that these software modules contain thousands, or even millions, of lines of code, an extremely large amount of effort is needed to identify parallel regions. To pave the way in this area, this paper presents Parallel Pattern Analyzer Tool, a software component that aids the discovery and annotation of parallel patterns in source codes. This tool simplifies the transformation of sequential source code to parallel. Specifically, we provide support for identifying Map, Farm, and Pipeline parallel patterns and evaluate the quality of the detection for a set of different C++ applications.
Subject
Hardware and Architecture,Theoretical Computer Science,Software
Cited by
10 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Studying the expressiveness and performance of parallelization abstractions for linear pipelines;Proceedings of the 14th International Workshop on Programming Models and Applications for Multicores and Manycores;2023-02-25
2. Practical parallelization of scientific applications with OpenMP, OpenACC and MPI;Journal of Parallel and Distributed Computing;2021-11
3. Restoration of Legacy Parallelism: Transforming Pthreads into Farm and Pipeline Patterns;International Journal of Parallel Programming;2021-06-10
4. Stream Parallelism Annotations for Multi-Core Frameworks;Proceedings of the 24th Brazilian Symposium on Context-Oriented Programming and Advanced Modularity;2020-10-19
5. Refactoring GrPPI: Generic Refactoring for Generic Parallelism in C++;International Journal of Parallel Programming;2020-07-10