除去极个别的情形,一个并行系统能达到的加速比的上限是系统中处理器的数目:对单处理器系统,加速比为1,但使用更多的处理器时,得到的加速比通常比处理器的数目要低。下面的例子说明通常情况下,加速比是如何随着处理器的数目变化而变化的:
一个例子
加速比和效率关于处理器数目的函数
考虑在p处理器的超立方体上完成n个数的加法的问题。假定两个的加法和在两个直接相连的处理器间进行传递一个数的通信都只需要单位时间。这样,每个处理器完成本地的n/p个数的加法需要的时间为n/p-1个单位时间,完成局部加法后,p个部分和用logp个步骤的到一个全局和,每个步骤包括一次加法和一次通信。因此,总的并行运行时间
当n和p都较大时,上面的式子可以用下面的公式来近似:
因为串行运行时间为n-1,约等于n,所以加速比和效率可以用下面的表达式来近似:
|