【发布时间】:2013-01-24 18:52:16
【问题描述】:
我的理解是硬件预取永远不会跨越页面边界。我想知道软件预取是否具有相同的限制,即我可以使用软件预取来避免未来的 TLB 未命中。通过四处搜索,这似乎是可能的,但我在文档中找不到任何确定的东西,所以参考会很好。
我对 Nehalem、Sandy Bridge 和 Westmere 特别感兴趣。
【问题讨论】:
-
更新:IvyBridge 确实会跨页面边界进行硬件预取。 stackoverflow.com/a/20758769/224132。这是 IvB 中的一项新功能,从我读过的其他内容来看,我认为说 SnB 和更早的英特尔不会预取到下一页是准确的。不过,推测性 TLB 加载是一件事情,至少在由加载/存储指令的推测性执行触发时是这样。