期刊文献+
共找到2篇文章
< 1 >
每页显示 20 50 100
CNFED:一种基于条件数的浮点表达式误差检测工具
1
作者 王盼龙 王磊 +2 位作者 英津瑞 刘博文 高志勇 《计算机科学》 北大核心 2025年第S1期902-909,共8页
浮点数使用有限的精度来表示实数,其固有的舍入误差会在计算过程中累积,可能导致严重错误,从而危及程序的安全性和可靠性。理论上,最精准的浮点误差检测方法是穷举搜索所有可能的浮点数输入,以确定实际计算结果与理论值之间的最大误差,... 浮点数使用有限的精度来表示实数,其固有的舍入误差会在计算过程中累积,可能导致严重错误,从而危及程序的安全性和可靠性。理论上,最精准的浮点误差检测方法是穷举搜索所有可能的浮点数输入,以确定实际计算结果与理论值之间的最大误差,但搜索空间巨大,因此有效且高效地检测最大浮点误差一直是一个挑战。基于对条件数的研究,设计并实现了一种用于浮点表达式的误差检测工具CNFED。CNFED将输入区间划分成多个子区间,对每个子区间进行随机采样和评估,快速定位多个热点子区间;然后分层对这些热点子区间调用全局搜索算法和局部搜索算法,并结合相应评估函数进行筛选,最终找到可能的浮点误差极大值及相应的输入值并报告。实验选取FPBench标准测试集中26个表达式作为测试用例,并与先进检测工具ATOMU和HSED进行了比较。实验结果表明,CNFED检测效果优于ATOMU的比例为96.15%(25/26)。与针对浮点表达式的检测工具HSED相比,CNFED检测效果优于HSED的比例为34.62%(9/26),同时HSED所花平均时间是CNFED的4.8倍。 展开更多
关键词 误差检测 浮点运算 条件数 动态分析 分层搜索
在线阅读 下载PDF
基于区域划分的跨基本块SLP向量化技术
2
作者 韩林 丁永强 +3 位作者 崔平非 刘浩浩 李浩然 陈梦尧 《计算机科学》 北大核心 2025年第9期186-194,共9页
自动向量化作为发掘数据级并行性、提升程序性能的重要方式,被广泛应用于主流编译器中。超字级向量化(Superword-Level Parallelism,SLP)专注于发掘相邻同构语句级别的数据并行性检测并聚合标量指令生成向量指令。然而,传统的SLP框架在... 自动向量化作为发掘数据级并行性、提升程序性能的重要方式,被广泛应用于主流编译器中。超字级向量化(Superword-Level Parallelism,SLP)专注于发掘相邻同构语句级别的数据并行性检测并聚合标量指令生成向量指令。然而,传统的SLP框架在发掘跨基本块的语句向量化时能力不足,特别是当连续的可向量化指令被基本块边界分割时,SLP分析无法有效发掘潜在的向量化语句。针对这一问题,提出了一种基于区域划分的跨基本块SLP向量化方法。该方法通过扩大分析范围至支配关系内的多个基本块,打破了基本块边界的限制,从而能捕捉更多潜在向量化机会,有效提升了SLP向量化效率。所提出的方法基于GCC10.3.0编译器实现,并挑选SPEC CPU2006测试集中包含相关程序段的测试程序进行了实验。实验结果显示,在SPEC CPU2006测试集挑选的测试程序中,与传统SLP方法相比,所提出的方法可使SPEC CPU2006测试程序加速比最高提升12%,相关测试程序的平均加速比提升8%,在polybench测试中获得了平均3%的加速比,其有效性得到验证。该工作可为提升GCC编译中SLP向量化效率提供技术参考。 展开更多
关键词 编译优化 自动向量化 SLP 跨基本块 区域划分
在线阅读 下载PDF
上一页 1 下一页 到第
使用帮助 返回顶部