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.
翻译:近似计算框架配置了应用程序。 先前的工作已经引入了许多创建近似程序的框架。 随着近似框架扩散, 自然会询问如何比较和合并这些框架, 以创造更大型、 更富的交换空间。 我们通过展示 VIPER 和 BAA 来解决这些问题。 VIPER 比较了不同近似框架所引发的交换空间, 其方法是在各种可能的天体范围内直观地观性能改进。 BOA 是一组探索技术, 快速定位两个或两个以上近似框架组合产生的巨大交换空间中Pareto效率点。 我们使用 VIPER 和 BOA 来比较和合并三个不同的近似框架, 包括: 一个改变数字精确度, 一个跳过循环转转动的转动, 以及一个操纵现有应用参数。 与简单地查看 Pareto-optimal 曲线相比, 我们发现 VIPER 的可视化提供了更快捷、更方便的方法来确定任何精确损失的最佳近似技术。 比较一下, 我们找到了一个州- 更低位的35 演算法。