有没有一种编程方式可以像在这个主题中讨论的那样,在AMD系统上禁用硬件预取功能,就像在Intel系统中一样。
特别是针对AMD Opteron Barcelona或Istanbul架构。
有没有一种编程方式可以像在这个主题中讨论的那样,在AMD系统上禁用硬件预取功能,就像在Intel系统中一样。
特别是针对AMD Opteron Barcelona或Istanbul架构。
所有AMD Family 10h处理器(包括巴塞罗那和伊斯坦布尔)都有两个不同的硬件预取器。
第一个是传统的数据缓存预取器,它能识别连续的升序或降序缓存行访问流。可以通过将MSRC001_1022的第13位设置为“1”来禁用它。
另一个硬件预取器是“内存控制器预取器”。这是一个更通用的预取器,但仅在内存控制器内部运作(即不将预取的数据发送到核心 - 它只是使内存控制器在核心请求时更快地返回数据)。