Parallelism
並列処理は、複数のタスクを物理的に同時実行すること(マルチコア/マルチマシン)である。並行性が論理的な同時性であるのに対し、並列性は物理的な同時性である。
目的
複数のコア/マシンを活用して、計算集約的なタスクを高速化する。
メカニズム
データ並列:SIMD/GPUが同じ演算を異なるデータに適用する。タスク並列:複数コアが異なるタスクを実行する。MapReduceは分散データ並列である。アムダールの法則(逐次部分がボトルネックになる)に注意すること。
ユースケース
- パフォーマンスの高速化
- ハイパフォーマンス計算(HPC)
- 分散システム処理