システムアーキテクト試験 2015年 午前220


マルチプロセッサによる並列処理において、1プロセッサのときに対する性能向上比はアムダールの法則で説明することができる。性能向上に関する記述のうち、適切なものはどれか。 〔アムダールの法則〕
性能向上比=11並列化可能部の割合)+並列化可能部の割合プロセッサ数\text{性能向上比} = \frac{1}{(1 - \text{並列化可能部の割合}) + \frac{\text{並列化可能部の割合}}{\text{プロセッサ数}}}
問題画像
プロセッサ数が一定の場合、性能向上比は並列化可能部の割合に比例する。
プロセッサ数を増やした場合、性能向上比は並列化可能部の割合に反比例する。
並列化可能部の割合が0.5の場合は、プロセッサ数をいくら増やしても性能向上比が2を超えることはない。(正解)
並列化可能部の割合が最低0.9以上であれば、性能向上比はプロセッサ数の半分以上の値となる。

解説

マルチプロセッサの性能向上比とアムダールの法則【午前2 解説】

要点まとめ

  • 結論:性能向上比はアムダールの法則で表され、並列化可能部の割合とプロセッサ数に依存します。
  • 根拠:アムダールの法則は、並列化できない部分が性能向上の上限を決めるため、プロセッサ数を増やしても無限に性能が上がるわけではありません。
  • 差がつくポイント:並列化可能部の割合が性能向上の限界を決めるため、具体的な数値を使って上限を理解することが重要です。

正解の理由

選択肢ウ「並列化可能部の割合が0.5の場合は、プロセッサ数をいくら増やしても性能向上比が2を超えることはない。」が正解です。
アムダールの法則の式に並列化可能部の割合を0.5と代入すると、性能向上比の上限は
limN1(10.5)+0.5N=10.5+0=2\lim_{N \to \infty} \frac{1}{(1 - 0.5) + \frac{0.5}{N}} = \frac{1}{0.5 + 0} = 2
となり、プロセッサ数を無限に増やしても性能向上比は2を超えません。これが性能向上の理論的な上限です。

よくある誤解

性能向上比はプロセッサ数を増やせば無限に上がると思いがちですが、並列化できない部分が必ず存在するため、上限が存在します。

解法ステップ

  1. アムダールの法則の式を確認する。
  2. 並列化可能部の割合を問題の数値(0.5)に代入する。
  3. プロセッサ数を無限大に近づけた場合の性能向上比の極限を計算する。
  4. 極限値が性能向上比の上限であることを理解する。
  5. 選択肢の内容と照らし合わせて正誤を判断する。

選択肢別の誤答解説

  • ア: プロセッサ数が一定なら性能向上比は並列化可能部の割合に比例するとは限りません。比例関係ではなく、分母の形で複雑に依存します。
  • イ: プロセッサ数を増やすと性能向上比は増加しますが、並列化可能部の割合に反比例するわけではありません。
  • ウ: 並列化可能部の割合が0.5の場合、性能向上比の上限は2であり、これが正しい記述です。
  • エ: 並列化可能部の割合が0.9以上でも、性能向上比がプロセッサ数の半分以上になるとは限りません。具体的な計算が必要です。

補足コラム

アムダールの法則は並列処理の理論的限界を示す重要な法則です。並列化可能な部分が小さいと、いくらプロセッサ数を増やしても性能向上は頭打ちになります。逆に並列化可能部が大きいほど、より多くのプロセッサで効率的に処理が可能です。実際のシステム設計では、並列化可能部の割合を高める工夫が求められます。

FAQ

Q: アムダールの法則で性能向上比が1を超えない場合はありますか?
A: はい。並列化可能部の割合が0の場合、性能向上比は1であり、並列化しても性能は向上しません。
Q: プロセッサ数を増やすと必ず性能が向上しますか?
A: いいえ。並列化できない部分があるため、性能向上には限界があり、ある程度以上は効果が薄れます。

関連キーワード: アムダールの法則, 並列処理, 性能向上比, マルチプロセッサ, 並列化可能部割合
← 前の問題へ次の問題へ →

©︎2025 情報処理技術者試験対策アプリ