A Verification Guided Approach for Selective Program Transformations for Approximate Computing
Document Type
Conference Article
Publication Title
Proceedings of the Asian Test Symposium
Abstract
In recent times, approximate computing is being looked at as a viable alternative for reducing the energy consumption of programs, while marginally compromising on the correctness of their computation. The idea behind approximate computing is to introduce approximations at various levels of the execution stack, with an attempt to realize the resource hungry computations on low resource consuming approximate hardware blocks. However approximate computing for program transformation faces a serious challenge of automatically identifying core program areas/statements where approximations can be introduced, with a quantifiable measure of the resulting program correctness compromise. Introducing approximations randomly can cause performance deterioration without much energy advantage, which is undesirable. In this paper, we introduce a verification-guided method to automatically identify program blocks which lend themselves to easy approximations, while not compromising significantly on program correctness. Our method is based on identifying regions of code which are less influential for the computation of the program outputs and therefore, can be compromised with, however still having a potential of significant resource reduction. We take the help of assertions to quantify the effect of the resulting transformations on program outputs. We show experimental results to support our proposal.
First Page
37
Last Page
42
DOI
10.1109/ATS.2016.28
Publication Date
12-22-2016
Recommended Citation
Mitra, Sayandeep; Das, Moumita; Banerjee, Ansuman; Datta, Kausik; and Ho, Tsung Yi, "A Verification Guided Approach for Selective Program Transformations for Approximate Computing" (2016). Conference Articles. 660.
https://digitalcommons.isical.ac.in/conf-articles/660