arrow
Return

Unveiling parallelization opportunities in sequential programs

delete2016-07-01
delete18
PRE
AI
Z
Zhen Li *
R
Rohit Atre
Z
Zia Ul Huda
A
Ali Jannesari
F
Felix Wolf
DOI:10.1016/j.jss.2016.03.045delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
The stagnation of single-core performance leaves application developers with software parallelism as the only option to further benefit from Moore's Law. However, in view of the complexity of writing parallel programs, the parallelization of myriads of sequential legacy programs presents a serious economic challenge. A key task in this process is the identification of suitable parallelization targets in the source code. In this paper, we present an approach to automatically identify potential parallelism in sequential programs of realistic size. In comparison to earlier approaches, our work combines a unique set of features that make it superior in terms of functionality: It not only (i) detects available parallelism with high accuracy but also (ii) identifies the parts of the code that can run in parallel even if they are spread widely across the code, (iii) ranks parallelization opportunities according to the speedup expected for the entire program, while (iv) maintaining competitive overhead both in terms of time and memory. (C) 2016 Elsevier Inc. All rights reserved.
Keywords:
Parallelism discovery
Program analysis
Profiling
Data dependence
Parallelization
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Journal of Systems and Software cover
Journal of Systems and Software
IF:
4.1
Papers:
5.4K
Citations:
8.4K

Organization

R
RWTH Aachen University
Scholars:
3.5W
Papers: 2.6W
Citations: 3.6W
T
Technical University of Darmstadt
Scholars:
1.3W
Papers: 10.0K
Citations: 1.2W