Probabilistic estimation of the application-level impact of precision scaling in approximate computing applications

Abstract The introduction of Approximate Computing (AxC) into software allows achieving several optimizations such as performance improvement, energy reduction, and area reduction by paying with a decreased precision of the computed results. In order to find an effective balance in the application of approximate operators within the software, the approximation techniques proposed in the literature run several versions of the software with different configurations of the given technique. The common issue of this kind of approaches is the lack of a methodology to estimate the impact of the approximation at the application-level accuracy without facing time intensive simulations. In this paper, we evaluate the application-level accuracy by means of a Bayesian network modeling the propagation of the approximation across data. Once modeled the required classes of accuracy, the approach predicts the probability of the outcomes to reach each accuracy class. We performed experiments on a set of well-known target applications, both resilient and non-resilient to approximation. Specifically, as case study applications we used matrix multiplication, Discrete Cosine Transform (DCT), a Finite Impulse Response (FIR) filter and an image blending algorithm. Results show that the proposed approach is able to estimate the approximation error with good accuracy (98–99%) and very low computation time (i.e., few seconds, in the worst case).