PANDORA: An Architecture-Independent Parallelizing Approximation-Discovery Framework
PANDORA: An Architecture-Independent Parallelizing Approximation-Discovery Framework
复制标题
PANDORA:独立于架构的并行逼近发现框架
DOI:
10.1145/3391899
复制
发表时间:
2020
影响因子:
2
通讯作者:
Campbell, David
中科院分区:
文献类型:
--
作者:
Stitt, Greg;Campbell, David
In this article, we introduce aparallelizingapproximation-discovery framework, 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.