1

我正在尝试从InvisiSpec paper复制数据。InvisiSpec 是一种针对 Spectre 攻击的硬件防御机制。我正在使用论文作者发布的 github代码

目前我可以在我的系统上成功构建和运行最新版本的 gem5 模拟器。但是,在尝试构建他们的代码时出现以下异常

Exception: MI_example-cache.sm:401: Error: Invalid method call: Type 'Sequencer' does not have a method evictionCallback, 'evictionCallback_Addr' nor '':

我不知道这个错误来自哪里。我浏览了很多东西,但没有任何成功。如果有人可以帮助我找到导致异常的原因,我将不胜感激。该问题也发布在相应的github 存储库中。

4

1 回答 1

0

上述错误和之后出现的其他一些错误与协议 MI 以及 scons 和 python 版本有关。我可以使用 MESI 协议构建它。

python2.7 `which scons` build/X86/gem5.opt --default=X86 PROTOCOL=MESI_Two_Level

将修改后的 InvisiSpec 版本与原始 Gem5 进行比较,我相信论文作者对适用于 MESI 协议的内存一致性进行了更改。与其他协议相关的代码需要相应更新。

于 2019-05-13T20:22:01.757 回答