0

一些参数已经在 Hwang 的 Advanced computer architecture book 中进行了描述,例如 Speedup、Efficiency、Redundancy、Utilization 和 Quality,如下图所示。

在此处输入图像描述

我完全理解并部分理解最后一个参数,质量。问题是,为什么质量与冗余成反比关系。如前所述,冗余显示了软件并行性和硬件之间的匹配。例如,一个处理器运行一个单元指令,因此,O(1)=1。

通过 O(n) 我们实际上增加了处理器的数量,因此单元操作增加并且上限为 n。所以,这很好!不是吗?

但是根据质量度量,如果我们增加冗余,质量就会下降。也许有些词的定义在这里是模棱两可的。

任何想法?

4

1 回答 1

1

我认为误解了 O(n),它是所有处理器在整个执行期间执行的单元操作的总数。这没有上限,O(1) 不一定(实际上不是)1;这取决于应用程序。如果与在单处理器上执行应用程序相比,我们必须在 n 个处理器上执行更多操作来并行化应用程序(即冗余大于 1),那么这是一件坏事,冗余越大,软件和软件之间的不匹配就越大。硬件并行。理想情况下,冗余为 1。因此,如果我们要将加速比、效率和冗余组合成一个单一的质量指标,加速比和效率应该在分子中,冗余应该在分母中。

值得注意的是,本书中提到的这些指标的大部分上限和下限在现代处理器上都过于简单化了。它们在简单(标量)处理器上最有意义。但是,在现代多核系统上,它们无法准确捕捉现实中可能发生的情况。例如,2 处理器系统上的加速比可能低于 1 或高于 2。冗余不仅取决于 ISA,还取决于编译器。所以它可以小于 1 或大于 2。尽管指标本身仍然非常有用。

于 2018-10-19T13:30:10.620 回答