如何提高 PC 的性能,升级处理器、内存或时钟速度?

How to improve performance of PC, upgrade processor, memory or clock speed?

PC 有一个微处理器,每微秒处理 16 条指令。每条指令都是 64 位长。它的记忆可以检索或存储 data/instructions 以每微秒 32 位的速率。 提及 3 个选项以升级系统性能。哪个选项的性能提升最大?

提供的答案是

a) 将处理器升级到两倍速度

b) 以两倍的速度升级内存

c) 双时钟速度

(b) 提供了最大的改进性能。

克服PC瓶颈,提升综合性能

但是,我的问题是我不确定为什么 b 提供了最大的性能改进。此外,a 和 c 会提供相同的性能吗?它会提供相同的性能吗?可以计算吗?我不确定这些不同的部分如何影响性能。

您问题的前导段落包含必要的数字,以了解为什么它是 b):

CPU的处理速度固定为每微秒 16 条指令。因此一条指令的执行时间不到一微秒

每条指令的长度为 64 位,但内存系统以每微秒 32 位的速度检索数据。因此检索单个指令(即 64 位)需要 2 微秒。

瓶颈很明显:检索指令 (2μs) 比执行指令 (1/16thμs) 花费的时间更长。

如果提高 CPU 速度(答案 a)),CPU 将更快地执行单个指令,但仍会等待空闲至少2μs等待下一条指令到达,所以浪费了改进。

为了消除瓶颈,您需要提高内存系统的速度以匹配 CPU 的执行速度,因此内存需要在 1/16μs 内读取 64 位(或在 1/ 内读取 32 位) 32μs).

我假设答案 c) 指的是增加某些系统范围主时钟的速度,这也会增加 CPU 和内存数据速率。这将提高性能,但 CPU 仍将受制于内存速度。

请注意,您的问题描述的是一台简单的计算机。计算机最初就是这样,CPU 直接访问内存,一条条指令。然而,随着 CPUs 变得更快,内存却没有 - 所以计算机工程师增加了缓存级别:这是更快的内存(但容量小得多),其中指令(和数据内存)的读取速度与 CPU 可以执行它们,无需使所有系统内存匹配 CPU 的速度即可解决瓶颈。