一句话:提出一族可刻画多种内存一致性模型的逻辑理论及通用高效求解器,并用于有界模型检测。
并发程序语义受内存一致性模型影响,现有验证工具往往针对特定模型。本文提出一族逻辑理论,用于刻画抽象的一致性概念,并构造对族内所有理论通用的高效求解器。该理论族足以精确表达 TSO、POWER、ARMv8、RISC-V、RC11、IMM 及 Linux 内核内存模型等。作者将求解器集成到惰性 SMT 方案中,作为有界模型检测工具的后端。与相关验证工具的实验对比表明,该方法兼具灵活性,并在复杂内存模型下的挑战性程序上展现出有希望的性能。
We propose a family of logical theories for capturing an abstract notion of consistency and show how to build a generic and efficient theory solver that works for all members in the family. The theories can be used to model the influence of memory consistency models on the semantics of concurrent programs. They are general enough to precisely capture important examples like TSO, POWER, ARMv8, RISC-V, RC11, IMM, and the Linux kernel memory model. To evaluate the expressiveness of our theories and the performance of our solver, we integrate them into a lazy SMT scheme that we use as a backend for a bounded model checking tool. An evaluation against related verification tools shows, besides flexibility, promising performance on challenging programs under complex memory models.