基于多类型计算重写的浮点表达式精度优化方法
TP311; 表达式重写是精度优化领域的新兴方法,其核心思想是在不改变表达式精度类型的前提下,将其变换为语义上等价的表达式以尝试提升精度.然而,面对庞大的变换规则和变换空间,如何选取合适的变换策略成为了重写方法的问题所在.针对上述问题,提出了一个基于多类型计算重写的浮点表达式精度优化方法,支持包括函数计算、四则运算的表达式,并实现了表达式重写工具exprAuto.区别于其他精度优化工具侧重于对子表达式的替换,exprAuto更注重对表达式运算顺序的变换.ex-prAuto在对表达式化简和数学变换后,通过多项式变换获取不同的计算顺序,并尝试减少运算次数以提升精度,最终生成一个包含不同计算顺序的等...
Saved in:
| Published in: | 计算机科学 Vol. 51; no. 4; pp. 86 - 94 |
|---|---|
| Main Authors: | , , , , , |
| Format: | Journal Article |
| Language: | Chinese |
| Published: |
信息工程大学网络空间安全学院 郑州 450001
15.04.2024
数学工程与先进计算国家重点实验室 江苏无锡 214125%中国科学院软件研究所天基综合信息系统重点实验室 北京 100190 |
| Subjects: | |
| ISSN: | 1002-137X |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | TP311; 表达式重写是精度优化领域的新兴方法,其核心思想是在不改变表达式精度类型的前提下,将其变换为语义上等价的表达式以尝试提升精度.然而,面对庞大的变换规则和变换空间,如何选取合适的变换策略成为了重写方法的问题所在.针对上述问题,提出了一个基于多类型计算重写的浮点表达式精度优化方法,支持包括函数计算、四则运算的表达式,并实现了表达式重写工具exprAuto.区别于其他精度优化工具侧重于对子表达式的替换,exprAuto更注重对表达式运算顺序的变换.ex-prAuto在对表达式化简和数学变换后,通过多项式变换获取不同的计算顺序,并尝试减少运算次数以提升精度,最终生成一个包含不同计算顺序的等价表达式集合,通过排序筛选和误差检测从中选出最终的精度优化结果.文中选取41个FPBench标准集中的表达式和18个常见数学函数的近似多项式作为测试用例,在经exprAuto优化后,所提方法相比原式最大误差降低了45.92%,平均误差降低了 34.98%;针对其中的18个近似多项式,相比原式最大误差降低了 58.35%,平均误差降低了43.73%.实验结果表明,exprAuto可以有效提升表达式尤其是多项式的精度. |
|---|---|
| ISSN: | 1002-137X |
| DOI: | 10.11896/jsjkx.221200072 |