0

我试图理解为什么阿姆达尔定律不适用于这种情况?

假设我们有两个配置

配置 1 的 L1 访问延迟(hitDelay 和 missDelay 为 1 个周期) 配置 2 的 L1 访问延迟为 7 个周期。

假设加载和存储占处理器时间的 30%,我们预计加速为 1/(0.7 + 0.3/7) = 1.35

但是,当我在模拟基于 ROB 的处理器并使用周期计算加速比的实际模拟器上运行这两种配置时,加速比为 1.12。

为什么加速与使用阿姆达尔定律计算的不同。我认为由于某种原因,阿姆达尔定律不适用?

4

1 回答 1

1

Amdahl 的“定律”假设不同部分的时间不重叠。

乱序执行的 ROB 的全部意义在于找到指令级并行性并隐藏延迟。这就是为什么整个指令序列的性能不是每个指令单独的任何单个“成本”数字的总和,除了在最简单的 CPU 上。

例如,在预测现代超标量处理器上的操作延迟时需要考虑哪些因素,以及如何手动计算它们?(现代 x86 使其变得更加复杂,因为每条指令可能在微指令中具有不同的前端成本,但即使使用更简单的 RISC 机器,您仍然有后端端口压力与可能的延迟瓶颈)。

于 2021-03-09T15:12:13.670 回答