多处理器体系结构的性能受限于:操作系统瓶颈、内存竞争和I/O。因此,并不是处理器个数越多,系统的性能会越好。
多处理器体系结构的受限原因 | 解释 |
---|---|
操作系统瓶颈 | 在多处理器中,任何时刻最多只能有一个处理器运行操作系统软件,这意味着操作系统是处理器必须争用的共享资源。因此,操作系统是处理器必须串行访问的瓶颈,即如果K个处理器需要访问,则其中K-1个处理器必须等待。 |
内存竞争 | 如果体系结构中,缓存是共享的,则就会出现处理器竞争的问题;如果每个处理器都有一个私有缓存,则必须对缓存进行协调,使得任何更新被传播到所有缓存,但是协调又会引入开销。 |
I/O | 大多数应用程序不因计算量而受限,而是因I/O受限。 |
而为了评估具有N个处理器的系统的性能,就引入了加速比的概念:单个处理器的性能与多个处理器性能之比。具体而言,加速比的定义为:
加
速
比
=
t
1
t
n
加速比=\frac{t_1}{t_n}
加速比=tnt1
其中, t 1 t_1 t1表示程序在单个处理器上执行花费的时间, t n t_n tn表示程序在多处理器上花费的时间。在每种情况下,均假设采用可用的最佳算法来测量性能(即,允许重构程序以充分利用并行硬件的优势)。