国内刊号:43-1258/TP
国际刊号:1007-130X
发布日期:
作者:黄春, 姜浩, 谷同祥, 齐进, 刘文超
单位:(1.国防科技大学计算机学院,湖南 长沙 410073;2.北京应用物理与计算数学研究所,北京 100088)
关键词:无误差变换,浮点数,高精度,求和,点乘,
基金:国家重点研发计划(2017YFB0202003);国家自然科学基金(61907034);科学挑战专题资助项目(TZ2016002);湖南省自然科学基金(2018JJ3616)
在大规模和长时程数值计算中,浮点运算的舍入误差的累积效应可能导致数值结果不可信。求和与点乘是浮点数值计算中最为基础的运算,在大规模科学计算过程中被频繁调用,其数值结果精度至关重要。面向国产飞腾处理器,基于OpenBLAS,采用无误差变换技术设计了高效的汇编内核函数,实现并优化了高精度的求和与点乘算法。数值实验显示,该高精度算法的数值结果精度同原始算法在双倍工作精度下得到的数值结果精度相同,验证了本文算法的有效性;本文算法在单线程情况下运行时间分别是原始算法运行时间的1.57倍和1.76倍,在保证精度提升的同时效率没有明显的降低;在多线程情况下,同原始算法具有近乎相同的运行时间,体现了算法的高效性。理论误差分析进一步表明了本文算法的可靠性。
来源:2021年第1期
《计算机工程与科学》期刊编辑部