Parallel processing 古斯塔夫森';s定律vs阿姆达尔';s定律

Parallel processing 古斯塔夫森';s定律vs阿姆达尔';s定律,parallel-processing,cuda,Parallel Processing,Cuda,我知道阿姆达尔定律和并行程序的最大加速比。但是我不能正确地研究古斯塔夫森定律。什么是古斯塔夫森定律?阿姆达尔定律和古斯塔夫森定律有什么区别?阿姆达尔定律 假设您有一个顺序代码,并且其计算的一部分f被并行化,并在并行工作的N处理单元上运行,而剩余部分1-f无法改进,即无法并行化。阿姆达尔定律指出,通过并行化实现的加速是 古斯塔夫森定律 Amdahl的观点集中在一个固定的计算问题上,因为它处理的代码占用固定的顺序计算时间。Gustafson的反对意见是,大规模并行计算机允许以前不可行的计算,因为它

我知道阿姆达尔定律和并行程序的最大加速比。但是我不能正确地研究古斯塔夫森定律。什么是古斯塔夫森定律?阿姆达尔定律和古斯塔夫森定律有什么区别?

阿姆达尔定律

假设您有一个顺序代码,并且其计算的一部分
f
被并行化,并在并行工作的
N
处理单元上运行,而剩余部分
1-f
无法改进,即无法并行化。阿姆达尔定律指出,通过并行化实现的加速是

古斯塔夫森定律

Amdahl的观点集中在一个固定的计算问题上,因为它处理的代码占用固定的顺序计算时间。Gustafson的反对意见是,大规模并行计算机允许以前不可行的计算,因为它们可以在固定的时间内对非常大的数据集进行计算。换句话说,并行平台的作用不仅仅是加速代码的执行:它能够处理更大的问题

假设应用程序在
N
处理单元上执行的时间
ts
。在计算时间中,必须按顺序运行一部分
(1-f)
。因此,此应用程序将在一台完全顺序的机器上运行,时间
t
等于

如果我们增加问题的大小,我们可以增加处理单元的数量,以使代码并行执行的时间部分等于
f·ts
。在这种情况下,顺序执行时间随着
N
的增加而增加,这现在成为问题大小的度量。然后,加速变为

这样效率就会提高

因此,随着
N
的增加,效率趋于f。 这些相当乐观的加速和效率评估的缺陷与这样一个事实有关:随着问题规模的增加,通信成本将增加,但古斯塔夫森定律并未考虑通信成本的增加

参考资料

G.Barlas,《多核和GPU编程:综合方法》,Morgan Kaufmann

M.D.希尔,M.R.马蒂,《多核时代的阿姆达尔定律》,计算机,第41卷,n。2008年7月,第33-38页

GPGPU

对于应用于通用图形处理单元的阿姆达尔定律,有一些有趣的讨论,请参见


我们从不同的角度看待同一个问题。阿姆达尔定律说,如果你有,比如说,100多个CPU,你能以多快的速度解决同样的问题

古斯塔夫森定律是说,如果一台拥有100个CPU的并行计算机可以在30分钟内解决这个问题,那么一台只有一个CPU的计算机解决同样的问题需要多长时间


古斯塔夫森定律更好地反映了这种情况。例如,我们不能用一台20年前的电脑来玩今天的大多数视频游戏,因为它们太慢了。

阿姆达尔定律

一般来说,如果一个作业的一小部分f不可能分成平行的部分,那么整个作业的并行速度只能提高1/f。这就是阿姆达尔定律

古斯塔夫森定律

一般来说,对于p参与者,以及不可并行的分数f,整个事情可以得到p+(1)−p) f快几倍。这就是古斯塔夫森定律