【发布时间】:2016-03-04 04:38:46
【问题描述】:
我真的对 CPU 缓存感到困惑。
我试过查看它们是如何工作的,但我得到的只是:
- 它比主内存快。
- 您无法务实地检查您的程序是否正在使用它。
- 不使用它会显着降低您的程序速度。
- 你不应该关心它。
- 如果您不关心它,您的程序运行速度可能会慢 20 倍。
- 管理缓存的最佳选择是对时间进行有根据的猜测。
- 不同的缓存可能使用不同的缓存算法。
让我对它们感到困惑的是:
- 缓存如何检查命中?里面有处理器吗?
- 缓存如何与进程交换交互?恐怕即使我的程序是 1kb 并且我的缓存是 32kb,cpu 也可能不会利用局部性,因为它会一直交换它。
感谢您的帮助!
【问题讨论】:
标签: performance caching