一种基于动态程序分析的浮点程序精度损失检测

来源 :张亚光 | 被引量 : 0次 | 上传用户:aswdea
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
浮点数运算在现代计算机系统中被广泛应用,例如科学计算、图像处理、声音处理等领域。然而,由于浮点数的表示方式和精度限制,浮点数运算可能会产生误差,导致浮点程序出现精度损失问题。这种精度损失问题不仅会影响到浮点程序本身的准确性和可靠性,还会对调用浮点程序的上层软件系统产生影响,从而影响整个软件系统的可靠性。因此检测浮点程序中的精度损失非常必要。浮点数据固有的存储形式,使得浮点数据无法完全表示全体实数,浮点运算中的舍入误差以及误差累积,导致浮点运算程序精度损失不易检测。本文提出了一种动态分析方法来检测浮点程序的精度损失问题。本文主要研究与贡献如下:1.提出了一种基于动态程序分析的浮点程序精度损失检测方法。首先是生成输入数据,将浮点数分布特征与浮点程序代码段执行频率相结合,生成规模合适且分布均匀的输入数据,对浮点程序中的特定精度操作进行检测与排除,借助LLVM的前端Clang工具,分析源代码的组织结构生成抽象语法树,定位浮点数据声明与运算,生成更高精度的MPFR运算,借助Dyninst插桩框架,将浮点运算与更高精度的MPFR运算同时运行比较,进行语句级的精度损失检测,记录浮点程序每一步的精度损失变化情况,生成精度损失变化图,定位浮点精度损失位置。2.提出了一种浮点程序输入数据生成方法。根据浮点数分布不均匀的特点,在浮点程序输入域内,遍历浮点程序输入域内的所有指数,不同指数随机生成小规模浮点数,保证了浮点数的均匀分布,然后结合浮点程序代码段执行频率的高低,生成大规模输入数据。3.实现了由浮点数据声明与运算自动生成更高精度的MPFR代码段。在定位浮点数据声明与运算之后,将中缀表达式转化为后缀表达式,解决中缀表达式运算符优先级的问题,通过遍历后缀表达式,如果遍历到的是数值,则生成相应的MPFR数值声明,如果遍历到的是运算符,则生成相应的MPFR函数运算,需要注意数据类型的匹配问题。本文通过对GSL库中的常用函数以及FPBench中的部分测试用例进行测试,本文方法相比随机生成输入数据方法检测GSL函数的相对误差平均提高43%,与Herbgrind工具相比对FPBench进行测试,相对误差平均提高1.8个比特位。
其他文献
随着物联网的快速发展,技术的广泛应用为传统工业体系带来了便利,但同时也带来了众多的安全隐患,尤其是工业物联网。由于工业控制网络的复杂性和开放性,工业物联网面临着严重的网络安全威胁。因此,为深入建模工业控制网络攻击和防御之间的逻辑关系,评估工业物联网系统的安全机制,数据驱动的威胁建模方法成为热点研究方向。与传统第一性原理模型相比,数据驱动模型的优点是能够可以在没有太多先验知识的情况下,从大量数据中提
学位
学位
学位
在如今这个时代,网络技术的发展已经影响到了多个领域,网络的普及使人类社会迈向了一个新的台阶。网络在很多方面促进了人们的生活,但从安全角度出现网络也带在了很多问题,如:在数据传输过程中机密的信息容易被劫持、攻击者可能会探索网络安全漏洞并对网络设备展开攻击。因此,网络安全防护也变得越来越重要。目前对网络攻击进行防御的方法有很多,如:防火墙、系统补丁、身份验证、信息加密和入侵检测等。但现今网络攻击变幻莫
学位
在信息时代,可靠和隐私保障的数据存储和分发是一个关键挑战,需确保数据在存储和传输期间不被篡改或窃听。利用区块链存储重要文件是一个非常有前景的解决方案。随着区块链技术的不断发展,区块链不在局限于加密货币这一金融领域,而是即将进入到智能化领域,即区块链3.0。区块链3.0将区块链技术应用到更广阔的领域,为各行各业以及个人提供真实的价值服务。区块链文件存储是区块链应用的研究热点之一。区块链所具备的去中心
学位
小学阶段是青少年成长的重要时期,建立和完善小学校园安全管理体制,不断加强安全事故的应对措施建设,加强校园安全管理,对促进学生的全面、健康发展具有重大的现实意义。但当前,仍有一些学校不重视校园安全工作,导致安全事故频发,究其原因,主要与学生安全意识淡薄及其对突发事件的应对技能缺乏有关。基于此,文章结合小学生的特点,就小学校园安全管理工作作一论述。
期刊
SoC(System on Chip),片上系统即系统级芯片,是一种集CPU、存储、显示于一体的芯片,广泛应用于智能手机、电脑等电子产品中,目前主流的SoC芯片有麒麟9000、天玑9000等。当前SoC芯片业正在面临一系列前所未有的挑战,设计者将复杂的功能设计集成到一颗芯片上,芯片的性能越来越高,规模也越做越大,使得SoC芯片的设计复杂度不断增加,芯片验证是整个SoC芯片设计流程中最复杂、最耗时的
学位
总结了患者发生压力性损伤的高危因素及预防措施的研究进展,旨在为临床保障患者安全提供参考依据。
期刊
<正>“十三五”期间,北京市东城区人民政府在北京市率先制定了《东城区关于加强学校美育工作的实施意见》。结合东城区各类文化场馆星罗密布、文化底蕴深厚的区域特色,戏剧教育被明确写入了政府文件,确立了戏剧教育在美育工作中的重要位置,为东城区全面、科学推进戏剧教育的研究与实践奠定基础。
期刊
物联网、人工智能和普适计算等领域的进步,促进了基于可穿戴传感器的人体行为识别技术的发展与落地,使其逐步应用于智能医疗、运动监测等诸多新兴交叉领域。深度学习算法的引入使人体行为识别技术摆脱对传统手工制作特征的依赖,能够自动学习原始数据的深层特征。从穿戴传感器数据中学习更具鲁棒性的特征表征是提高可穿戴行为识别率和模型泛化性的关键。基于此,本文对可穿戴行为识别在单位置穿戴和多位置穿戴两种典型应用场景下的
学位