並列処理

更新日:

用語解説

並列処理は、一つの計算や多数の独立作業を複数のCPU、コア、GPU、計算機へ分割し、物理的に同時実行して処理時間短縮又は処理量増加を図る方式です。

■ 試験で押さえるポイント

  • データを分割して同じ処理を行うデータ並列と、異なる処理を同時に行うタスク並列があります。

  • 分割、通信、同期、結果統合にオーバーヘッドがあり、プロセッサ数を増やしても比例して高速化するとは限りません。

  • 逐次部分の割合をs、プロセッサ数をnとすると、アムダールの法則による速度向上上限は1s+1sn\dfrac{1}{s+\dfrac{1-s}{n}}です。

  • 共有データには競合と排他制御が必要で、負荷の偏りがあると一部処理待ちで全体性能が低下します。

■ 選択肢での判断ポイント

並列化可能部分、速度向上率、アムダールの法則、負荷分散、並行処理との違いが計算・選択問題で問われます。

例: 逐次部分20%、並列部分80%を4コアで実行した理論速度向上は10.2+0.84=2.5\dfrac{1}{0.2+\dfrac{0.8}{4}}=2.5倍です。

音声で聞く

同じ分野の用語