Comparing and Combining Approximate Computing Frameworks
This work addresses the challenge of managing proliferating approximation frameworks for system designers, offering incremental improvements in comparison and combination techniques.
The paper tackles the problem of comparing and combining multiple approximate computing frameworks to navigate accuracy-performance trade-offs, introducing VIPER for visualization and BOA for efficient exploration, which reduces configurations by 14x and finds 35% more Pareto-efficient points compared to a state-of-the-art method.
Approximate computing frameworks configure applications so they can operate at a range of points in an accuracy-performance trade-off space. Prior work has introduced many frameworks to create approximate programs. As approximation frameworks proliferate, it is natural to ask how they can be compared and combined to create even larger, richer trade-off spaces. We address these questions by presenting VIPER and BOA. VIPER compares trade-off spaces induced by different approximation frameworks by visualizing performance improvements across the full range of possible accuracies. BOA is a family of exploration techniques that quickly locate Pareto-efficient points in the immense trade-off space produced by the combination of two or more approximation frameworks. We use VIPER and BOA to compare and combine three different approximation frameworks from across the system stack, including: one that changes numerical precision, one that skips loop iterations, and one that manipulates existing application parameters. Compared to simply looking at Pareto-optimal curves, we find VIPER's visualizations provide a quicker and more convenient way to determine the best approximation technique for any accuracy loss. Compared to a state-of-the-art evolutionary algorithm, we find that BOA explores 14x fewer configurations yet locates 35% more Pareto-efficient points.