3. 精度度量(误差度量)
精度度量是原始程序的输出与在相同输入上运行的穿孔程序的相应输出之间的差异,
度量分解为两个部分:一个输出抽象,它将输出映射到一个数字或一组数字;
一个精度计算,它度量来自原始执行和穿孔执行的输出抽象之间的差异。
输出抽象通常从一个或多个输出文件中选择相关的数字,或者计算输出质量的度量(例如峰值信噪比)。
许多近似计算都带有已经定义和可用的质量度量(参见第5节)。
度量acc用加权平均数表示原始程序和穿孔程序之间输出抽象的差异,
原始程序的输出抽象o1, . . . , om
穿孔程序的输出抽象o ˆ1, . . . , oˆm,
wi表示,第i个输出抽象的相对重要性。
acc越接近与0,表示穿孔程序的输出越精确。
4.穿孔的探索
4.1. 循环穿孔空间探索算法:
输入:应用程序、应用程序的精度度量、一组训练输入、精度边界b(应用程序可接受的最大精度度量,即阈值)和一组射孔率(在我们的实验中,为0.25、0.50、0.75和1次迭代)。
输出:给定阈值下,在应用程序内一组可以穿孔的循环
算法产生一组循环,以指定的穿孔率进行穿孔。
4.2. 临界测试:
(目的:在一组有代表性的输入和阈值下,得到一组可调循环和穿孔率的集合