Abstract

Approximate computing, which tackles tradeoff between computation quality (e.g., accuracy) and computation efforts, is becoming a promising technique to improve performance for many mission-non-critical and error-tolerant applications. The computations in such applications usually exhibit superior value locality, i.e., computations performed by a function or code region are very likely to produce “similar” results. Reusing such similar results can bypass redundant computations, as long as “exact” results are not mandatory. However, conventional computation reuse techniques are less effective in approximate computing paradigm. The input values of two computations have to be identical to reuse one for another, hence “exact” in nature. We propose ACR, an approximate computation reuse scheme, to enable computation reuse for approximate computing. ACR relaxes the exact matching requirement in inputs to some extent regulated by “similarity” quantification, thereby shifting the exact computation reuse paradigm to its approximate counterpart. Specifically, using statistical approaches ACR first provides an input significance-aware similarity quantification scheme to calculate similarity between different computations. ACR also provides a regression based branch prediction technique to resolve conditional branches inside a computation. Furthermore, on top of proposed approximate computing framework, ACR presents a parallel implementation of computing engine to carry out branch resolving and similar computation searching. Experimental results show that the ACR scheme could effectively exploit the potential of computation reuse for approximate computing and achieves 3.12 times speedup on average for a set of approximate benchmarks.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call