首页> 外文会议>Computer Aided Verification >Shared Memory Consistency Protocol Verification Against Weak Memory Models: Refinement via Model-Checking
【24h】

Shared Memory Consistency Protocol Verification Against Weak Memory Models: Refinement via Model-Checking

机译:针对弱内存模型的共享内存一致性协议验证:通过模型检查进行细化

获取原文

摘要

Weak shared memory consistency models, especially those used by modern microprocessor families, are quite complex. The bus and/or directory-based protocols that help realize shared memory multiprocessors using these microprocessors are also exceedingly complex. Thus, the correctness problem - that all the executions generated by the multiprocessor for any given concurrent program are also allowed by the memory model - is a major challenge. In this paper, we present a formal approach to verify protocol implementation models against weak shared memory models through automatable refinement checking supported by a model checker. We define a taxonomy of weak shared memory models that includes most published commercial memory models, and detail how our approach applies over all these models. In our approach, the designer follows a prescribed procedure to build a highly simplified intermediate abstraction for the given implementation. The intermediate abstraction and the implementation are concurrently run using a model-checker, checking for refinement. The intermediate abstraction can be proved correct against the memory model specification using theorem proving. We have verified four different Alpha as well as Itanium memory model implementations against their respective specifications. The results are encouraging in terms of the uniformity of the procedure, the high degree of automation, acceptable run-times, and empirically observed bug-hunting efficacy. The use of parallel model-checking, based on a version of the parallel MurΦ model checker we have recently developed for the MPI library, has been essential to finish the search in a matter of a few hours.
机译:弱共享内存一致性模型(尤其是现代微处理器系列所使用的模型)非常复杂。使用这些微处理器帮助实现共享内存多处理器的基于总线和/或基于目录的协议也非常复杂。因此,正确性问题-内存模型也允许多处理器为任何给定并发程序生成的所有执行都被存储模型允许-是一个重大挑战。在本文中,我们提出了一种正式的方法,可以通过模型检查器支持的自动优化检查来针对弱共享内存模型验证协议实现模型。我们定义了一个弱共享内存模型的分类法,其中包括大多数已发布的商业内存模型,并详细说明了我们的方法如何应用于所有这些模型。在我们的方法中,设计人员遵循规定的过程为给定的实现构建高度简化的中间抽象。中间抽象和实现使用模型检查器并发运行,以检查细化程度。使用定理证明,可以相对于内存模型规范证明中间抽象是正确的。我们已经针对它们各自的规范验证了四种不同的Alpha和Itanium内存模型实现。从程序的均匀性,高度的自动化程度,可接受的运行时间以及凭经验观察到的错误发现效力方面,结果令人鼓舞。基于我们最近为MPI库开发的并行MurΦ模型检查器的版本,并行模型检查的使用对于在几小时内完成搜索至关重要。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号