缓存是否有可能具有超过100%的未命中率

问题描述 投票:-1回答:1

如标题所示,是否有任何代码或程序可以使缓存未命中率达到100%,或者甚至有可能使缓存始终永远找不到缓存中的数据,而CPU始终必须访问主内存。对于数据,这样的例子将是很好的。(就我想进行的小型研究而言)谢谢

c caching stat perf
1个回答
0
投票

理论上可能达到100%的高速缓存未命中率,但是很难实现。您将必须防止硬件prefetcher及时预取正确的cache lines,例如,通过编写代码使branch predictor始终失败或具有较长的依赖链来防止。另外,由于大多数CPU缓存都不完全是associative,因此您可以故意编写执行cache thrashing的代码,以便仅使用CPU缓存的很小一部分(一组)。

© www.soinside.com 2019 - 2024. All rights reserved.