我如何只计算gem5模拟器中的冲突缓存未命中?

时间:2017-10-23 20:19:51

标签: gem5

我在互联网上找到的资源都没有解释区分不同类型的缓存未命中。有人可以帮助我更改配置或代码中的哪些内容以仅测量冲突未命中?

1 个答案:

答案 0 :(得分:0)

BaseTags有一个名为tagsInUse的成员变量。每次以前无效的标签条目变为有效时,它都会增加。

考虑到当仍有空闲(无效)缓存行时会产生冲突未命中,但是放置策略决定选择逐出有效块,您只需要创建一个递增的miss stats变量(可以使用每当发生写入未命中时,在 src / mem / cache / base.hh 内的incMissCount(PacketPtr pkt)内的if if(检查 src / mem / packet.hh 以获取MemCmd类型我会说WritebackDirty,WritebackClean,WriteClean,CleanEvict是你应该查找的,但你应该仔细检查一下)并且你还没有使用所有缓存条目(tagsInUse< size)。