PipeCheck: Specifying and Verifying Microarchitectural Enforcement of Memory Consistency Models

PipeCheck: Specifying and Verifying Microarchitectural Enforcement of Memory Consistency Models
复制标题

PipeCheck:指定和验证内存一致性模型的微架构实施

DOI:
10.1109/micro.2014.38
复制
发表时间:
2014
期刊:
2014 47th Annual IEEE/ACM International Symposium on Microarchitecture
影响因子:
--
通讯作者:
M. Martonosi
M. Martonosi
中科院分区:
--
文献类型:
--
作者:
Daniel Lustig;Michael Pellauer;M. Martonosi

文献摘要

参考文献

被引文献

相似文献

我们提出PipeCheck,方法和自动化工具,用于验证一个特定的微体系结构正确地实现其体系结构规范所需的一致性模型。PipeCheck将架构级分析技术中的“之前发生”图的概念应用于微架构空间。“微架构上发生在”(μhb)图中的每个节点不仅表示存储器指令,而且还表示特定位置(例如,流水线阶段)。诸如“保留的程序顺序”之类的体系结构规范被视为需要验证的命题,而不仅仅是假设。PipeCheck允许架构师轻松而严格地测试一个微架构是否强于、等于或弱于其架构指定的一致性模型。我们还指定和分析常见微架构优化的行为,例如推测性负载重新排序,这在技术上违反了正式的架构级定义。我们使用一组开源管道上的已建立的石蕊测试库来评估PipeCheck。使用PipeCheck,我们能够在短短几分钟内验证最大的管道Open PIPET 2。我们还在gem 5模拟器的O3管道中发现了一个错误。
We present PipeCheck, a methodology and automated tool for verifying that a particular micro architecture correctly implements the consistency model required by its architectural specification. PipeCheck adapts the notion of a "happens before" graph from architecture-level analysis techniques to the micro architecture space. Each node in the "micro architecturally happens before" (μhb) graph represents not only a memory instruction, but also a particular location (e.g., Pipeline stage) within the micro architecture. Architectural specifications such as "preserved program order" are then treated as propositions to be verified, rather than simply as assumptions. PipeCheck allows an architect to easily and rigorously test whether a micro architecture is stronger than, equal in strength to, or weaker than its architecturally-specified consistency model. We also specify and analyze the behavior of common micro architectural optimizations such as speculative load reordering which technically violate formal architecture-level definitions. We evaluate PipeCheck using a library of established litmus tests on a set of open-source pipelines. Using PipeCheck, we were able to validate the largest pipeline, the Open SPARC T2, in just minutes. We also identified a bug in the O3 pipeline of the gem5 simulator.
了解 POWER 多处理器
DOI: 10.1145/1993316.1993520
发表时间: 2011
影响因子: --
作者:
Sarkar S
通讯作者: Sarkar S