有没有办法在AMD系统上以编程方式禁用硬件预取器,就像在this topic
中讨论的英特尔系统一样专门针对AMD Opteron Barcelona或Istanbul架构。
答案 0 :(得分:4)
所有AMD系列10h处理器(包括巴塞罗那和伊斯坦布尔)都有两个不同的硬件预取器。
第一个是传统的数据缓存预取程序,它可以识别连续的缓存行访问升序或降序流。可以通过将MSRC001_1022的第13位设置为“1”来禁用它。
其他硬件预取器是“内存控制器预取器”。这是一个更通用的预取器,但仅在内存控制器内运行(即,它不会将预取数据发送到核心 - 它只是使内存控制器在核心请求时更快地返回它)。
上面的内容记录在BIOS和内核开发人员家庭10h处理器指南中:http://support.amd.com/us/Processor_TechDocs/31116.pdf
答案 1 :(得分:1)
使用msr工具更改p407上AMD支持文档中指定的DC_CFG位