2013
DOI: 10.1145/2465787.2465790
|View full text |Cite
|
Sign up to set email alerts
|

Parallelizing Sequential Programs with Statistical Accuracy Tests

Abstract: We present QuickStep, a novel system for parallelizing sequential programs. QuickStep deploys a set of parallelization transformations that together induce a search space of candidate parallel programs. Given a sequential program, representative inputs, and an accuracy requirement, QuickStep uses performance measurements, profiling information, and statistical accuracy tests on the outputs of candidate parallel programs to guide its search for a parallelization that maximizes performance while preserving accep… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
50
0

Year Published

2013
2013
2022
2022

Publication Types

Select...
4
3
2

Relationship

3
6

Authors

Journals

citations
Cited by 56 publications
(50 citation statements)
references
References 48 publications
0
50
0
Order By: Relevance
“…The check therefore introduces no new and potentially unpredictable behaviors -it simply narrows the set of inputs that the application decides to process. This narrowing is conceptually similar to transformations that eliminate concurrency errors by narrowing the set of possible interleavings [27,43].…”
Section: The Code Phage (Cp) Code Transfer Systemmentioning
confidence: 99%
See 1 more Smart Citation
“…The check therefore introduces no new and potentially unpredictable behaviors -it simply narrows the set of inputs that the application decides to process. This narrowing is conceptually similar to transformations that eliminate concurrency errors by narrowing the set of possible interleavings [27,43].…”
Section: The Code Phage (Cp) Code Transfer Systemmentioning
confidence: 99%
“…But it is also possible to approach program behavior from an accuracy perspective (which characterizes program behaviors not as correct/incorrect or acceptable/unacceptable, but simply as more or less accurate). The QuickStep parallelizing compiler takes this perspective -it automatically generates parallel loops with data races, then applies accuracy-enhancing transformations (such as synchronization insertion and privatization) to increase the accuracy of the program and obtain an acceptably (but not necessarily completely) accurate approximate computation [43,44]. As approximate computing enters the mainstream, we expect accuracyenhancing transformations to become increasingly visible and important.…”
Section: Related Workmentioning
confidence: 99%
“…Compared to implicitly parallel and explicitly parallel approximate computing frameworks, such as Quickstep [5], variability-aware OpenMP [8] and variation tolerant Open-MP [7], our programming and runtime system provides better optimization capability via selective execution of approximate code and dynamic control of accuracy and efficiency. We achieve this by providing concurrency control (elasticity) and the ability to execute in a range of operating points that meet quality and energy constraints.…”
Section: Related Workmentioning
confidence: 99%
“…Dynamic techniques observe the accuracy impact of program transformations [1,2,29,41,42,44,59,60,62,68], or injected soft errors [20,37,38,64,70]. Researchers have developed static techniques that use probabilistic reasoning to characterize the accuracy impact of various phenomena [6,18,43,47,56,72].…”
Section: Accuracy Analysismentioning
confidence: 99%