  Approximate computing techniques have been successful in reducing computation
and power costs in several domains. However, error sensitive applications in
high-performance computing are unable to benefit from existing approximate
computing strategies that are not developed with guaranteed error bounds. While
approximate computing techniques can be developed for individual
high-performance computing applications by domain specialists, this often
requires additional theoretical analysis and potentially extensive software
modification. Hence, the development of low-level error-bounded approximate
computing strategies that can be introduced into any high-performance computing
application without requiring additional analysis or significant software
alterations is desirable. In this paper, we provide a contribution in this
direction by proposing a general framework for designing error-bounded
approximate computing strategies and apply it to the dot product kernel to
develop qdot -- an error-bounded approximate dot product kernel. Following the
introduction of qdot, we perform a theoretical analysis that yields a
deterministic bound on the relative approximation error introduced by qdot.
Empirical tests are performed to illustrate the tightness of the derived error
bound and to demonstrate the effectiveness of qdot on a synthetic dataset, as
well as two scientific benchmarks -- Conjugate Gradient (CG) and the Power
method. In particular, using qdot for the dot products in CG can result in a
majority of components being perforated or quantized to half precision without
increasing the iteration count required for convergence to the same solution as
CG using a double precision dot product.
