並列
時刻 $ t において、ある複数のプロセス $ p_0,\dots,p_n が実行状態にある ⇔ プロセス $ p_0,\dots,p_nは時刻 $ t において並列に実行されている。
同時に実行状態にある というのがキモ
並行 は同時に計算途中状態 (実行状態 | 待機状態)にある という定義 なぜ並列処理が必要になるのか?
性能向上のため
2000年代以降、CPUコア数の増加が進んでいる
動作周波数、消費電力、発熱、リーク電流に関する問題のため、1コアで発揮できる性能が頭打ちになってきた
半導体素子の微細化でコスト削減と動作周波数の向上を図っていた
しかし、微細化が進みすぎて量子トンネル効果によるリーク電流が無視できなくなってきた
量子トンネル効果を抑えるために素子をでかくするか、電圧を上げなければいけない
電圧を上げると発熱と消費電力が多くなる