Affiliation:
1. University of Florida, Gainesville, FL
Abstract
In this article, we introduce a
p
arallelizing
a
pproximatio
n
-
d
isc
o
very f
ra
mework, PANDORA, for automatically discovering application- and architecture-specialized approximations of provided code. PANDORA complements existing compilers and runtime optimizers by generating approximations with a range of Pareto-optimal tradeoffs between performance and error, which enables adaptation to different inputs, different user preferences, and different runtime conditions (e.g., battery life). We demonstrate that PANDORA can create parallel approximations of inherently sequential code by discovering alternative implementations that eliminate loop-carried dependencies. For a variety of functions with loop-carried dependencies, PANDORA generates approximations that achieve speedups ranging from 2.3x to 81x, with acceptable error for many usage scenarios. We also demonstrate PANDORA’s architecture-specialized approximations via FPGA experiments, and highlight PANDORA’s discovery capabilities by removing loop-carried dependencies from a recurrence relation with no known closed-form solution.
Funder
National Science Foundation
Publisher
Association for Computing Machinery (ACM)
Subject
Hardware and Architecture,Software
Reference55 articles.
1. Fuzzy Memoization for Floating-Point Multimedia Applications
2. A 30 year retrospective on Dennard’s MOSFET scaling paper. Solid-State Circuits;Bohr M.;Soc. Newsl., IEEE,2007
3. Loop parallelization algorithms: From parallelism extraction to code generation;Boulet Pierre;Parallel Comput.,1998
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献