並列処理メモ。

行列の乗算の並列計算。

某書籍に書いてあった例(直列の方が早い)

  1. 行列の乗算の直列計算
  2. 行列の乗算の並列計算

スケールしない理由
スレッド生成のオーバヘッドと同期のオーバヘッドが原因でスケールしないんだろう。
( このロジックは行列の各要素の計算につきひとつのスレッドを生成して計算させる。例えば、サイズ10の正方行列に対しては100本のスレッドを生成して計算する。)

計算すべき要素数と同数のスレッドを生成するのではなく、コア数と同数のスレッドを生成する作戦はいかがか。

現在並列計算のメソッド構成
  • メイン関数
  • スレッド用のメソッド
  • 一要素分の積を計算するメソッド

改善案のメソッド構成
  • メイン関数
  • スレッド用のメソッド
  • 指定された範囲で一要素分の積を計算するメソッド

改善案のメソッド構成で試した結果360次を超える正方行列の場合、スケールする。
本のやり方は、200次くらいにすると不正終了してしまう。放置。



















.
最終更新:2008年06月14日 14:25