RAM 如何跟上 CPU 的步伐?

RAM 如何跟上 CPU 的步伐?

我试图了解 RAM 如何设法跟上 CPU 的步伐。以下是我认为它无法跟上的原因:

  1. 现代 CPU 的时钟速度通常高于 RAM 模块的时钟速度(例如 2.4GHz 笔记本电脑处理器与 2133MHz RAM 模块)
  2. 这种 CPU 通常具有多个核心,允许以高于时钟速度的速度执行指令
  3. 这些 CPU 还可以采用单核并行技术,每个核心执行的指令数量超过时钟周期数
  4. 鉴于此,指令的执行速度远高于 RAM 频率
  5. 每个 RAM 时钟周期最多可以从 RAM 中获取一个地址的内容
  6. 除了 BIOS 之外,指令最终都必须来自 RAM
  7. 因此,从内存中获取指令的需求大大超过了 RAM 提供指令的能力

我找到了答案彼得·科德斯Stack Overflow 问题解释了这个问题是通过缓存和预取来解决的,但我不明白 CPU 如何获得预取的机会,因为它需要获取指令的速率似乎超过了 RAM 所能提供的速率。维基百科页面列出了 Intel Core i7 6950X 能够以 317900 MIPS 的速度执行指令;使用 2133MHz 的 RAM 频率,这似乎相当于每个 RAM 时钟周期大约 150 条指令。

我错过了什么?


我刚刚看了悉尼·豪克对之前链接的问题的回答指出,CPU 知道会重复的指令不会从内存中重新提取。这本身就足以弥补速度差异吗?

相关内容