ARM多核处理器存储模型快速检测技术

需积分: 5 0 下载量 139 浏览量 更新于2024-08-25 收藏 828KB PDF 举报
"一种ARM存储模型的快速检测方法 (2013年),吕正,陈昊,陈峰,针对ARM多核处理器的存储模型正确性检测,利用时间序和悬空窗口的有界特性,提出快速检测方法,并实现检测工具,适用于大规模ARM访存指令程序,采用C++实现,具有扩展性,通过模拟器实验验证其有效性。" 这篇论文主要探讨了针对ARM多核处理器存储模型正确性的快速检测方法。在多核处理器环境下,存储模型的正确性对于系统的并发行为和一致性至关重要。传统的检测方法可能存在效率低下,难以应对大规模程序的问题。为此,论文提出了一种新的检测策略,它基于barrier的弱一致性模型的公理语义,利用时间序和悬空窗口的有界特性来识别潜在的错误。 具体来说,该方法首先定义了ARM存储模型的基础理论,即基于barrier的弱一致性模型的公理语义,这有助于理解处理器在并发执行时如何处理内存访问。接着,通过定期扫描处理器的性能计数器,收集访存指令操作间的时间约束关系,这些时间约束关系反映了内存操作的顺序和依赖性。 论文中介绍的检测工具由三个主要模块构成:随机指令发生模块用于生成随机的指令流,模拟实际的程序执行;多核处理器性能计数器记录模块则负责收集执行过程中的性能数据;最后,结果分析模块对收集的数据进行分析,判断是否存在违反存储模型的行为。由于其低算法时间复杂度,该工具能够有效地处理包含上百万行ARM访存指令的程序。 该检测工具使用C++编程语言实现,具备动态调整指令流长度参数的能力,显示了良好的可扩展性。为了验证其效果,研究人员在支持ARM MPCore的模拟器上进行了实验,并手动在指令流中插入了几个错误,以测试检测工具能否准确地发现这些错误。实验结果显示,检测工具成功地识别出了注入的错误,证明了该方法和工具在检测ARM多核处理器存储模型正确性方面的有效性。 总结起来,这篇论文提出的快速检测方法和实现的工具为解决ARM多核处理器存储模型的正确性问题提供了一个高效且实用的解决方案,对于保障多核系统的并发行为正确性和优化系统性能具有重要意义。通过实时监控和分析,该方法能帮助开发者及时发现并修复可能存在的并发错误,从而提升软件的稳定性和可靠性。