python-parallel-programming-cookbook-cn icon indicating copy to clipboard operation
python-parallel-programming-cookbook-cn copied to clipboard

6.4.阿姆德尔定律 公式有问题

Open here101 opened this issue 4 years ago • 3 comments

该节中阿姆德尔定律wiki上译为阿姆达尔定律,翻译中该定律公式太简单了,并且译中:例如一个程序90%的代码都是并行的,但仍存在10%的串行代码,那么系统中即使由无限个处理器能达到的最大加速比仍为9

计算错误,不应该是9,应该是10,套用阿姆达尔定律:s=1/[1/10+(9/10)/p];p趋于∞,s=10.

here101 avatar May 28 '20 07:05 here101

image

好像原文也错了?这个定律我不是很了解,我得再去学习一下。

laixintao avatar May 29 '20 11:05 laixintao

Amdahl's law假定所有任务都可以分成可并行(parallel)和不可并行(即串行 serial)两部分,用p表示并行比例,s表示串行比例。假设串行执行所需要的时间为T(1),则使用N个执行单元并行时所需时间为T(N)=sT(1)+pT(1)/N. Speedup=T(1)/T(N),当N趋于无穷时,Speedup=1/s,所以此处应该是10

marslicy avatar Apr 24 '21 09:04 marslicy

谢谢,这块我不是很了解,我再研究下,回头修正一下原文。

laixintao avatar Apr 27 '21 05:04 laixintao