平成27年度 秋期 システムアーキテクト試験 午前Ⅱ 問20

マルチプロセッサによる並列処理において,1 プロセッサのときに対する性能向上比はアムダールの法則で説明することができる。性能向上比に関する記述のうち,適切なものはどれか。

〔アムダールの法則〕

性能向上比=1(1−並列化可能部の割合)+並列化可能部の割合プロセッサ数性能向上比 = \frac{1}{(1 - 並列化可能部の割合) + \frac{並列化可能部の割合}{プロセッサ数}}

解答・解説

正解: ウ. 並列化可能部の割合が 0.5 の場合は,プロセッサ数をいくら増やしても性能向上比が 2 を超えることはない。

正解は ウ です。

アムダールの法則において、並列化可能部の割合を PP(0≤P≤10 \le P \le 1)、プロセッサ数を NN とすると、性能向上比は以下の式で表されます。

性能向上比=1(1−P)+PN性能向上比 = \frac{1}{(1 - P) + \frac{P}{N}}

ここで、並列化可能部の割合 P=0.5P = 0.5 を代入すると、以下のようになります。

性能向上比=1(1−0.5)+0.5N=10.5+0.5N性能向上比 = \frac{1}{(1 - 0.5) + \frac{0.5}{N}} = \frac{1}{0.5 + \frac{0.5}{N}}

プロセッサ数 NN を無限に増やした(N→∞N \to \infty)場合、0.5N\frac{0.5}{N} は 00 に近づくため、性能向上比の上限(極限値)は以下のようになります。

lim⁡N→∞10.5+0.5N=10.5+0=2\lim_{N \to \infty} \frac{1}{0.5 + \frac{0.5}{N}} = \frac{1}{0.5 + 0} = 2

したがって、プロセッサ数をいくら増やしても、性能向上比が 2 を超えることはありません。

各選択肢の解説

  • ア:誤りです。プロセッサ数 NN が一定の場合、分母の式 (1−P)+PN=1−P(1−1N)(1 - P) + \frac{P}{N} = 1 - P\left(1 - \frac{1}{N}\right) に変数 PP が含まれるため、性能向上比は PP に単純には比例しません。
  • イ:誤りです。並列化可能部の割合 PP が大きくなるほど分母が小さくなり性能向上比は大きくなるため、反比例するというのは誤りです。
  • ウ:正しいです。上記の計算の通り、P=0.5P = 0.5 のとき、性能向上比は 22 未満となります。
  • エ:誤りです。反例として、P=0.9P = 0.9、プロセッサ数 N=100N = 100 の場合を計算すると、
    性能向上比=1(1−0.9)+0.9100=10.1+0.009=10.109≈9.17性能向上比 = \frac{1}{(1 - 0.9) + \frac{0.9}{100}} = \frac{1}{0.1 + 0.009} = \frac{1}{0.109} \approx 9.17
    となり、プロセッサ数の半分(100÷2=50100 \div 2 = 50)には遠く及びません。

Spineチーム