あそびばLinux

Linux関連を中心に

concurrency & parallel

SICPを読んでいたら並列性(concurrently)が出てきたので、
coucurrencyとparallelの違いについて調べてみた。
日本語訳ではconcurrencyが並行でparallelが並列らしい。
SICPでの訳と逆だけど、まぁこれは日本語の問題なので略。

http://stackoverflow.com/questions/1050222/concurrency-vs-parallelism-what-is-the-difference

ここでの議論から引用。

coucurrency:2つ以上のプロセスが同一期間に実行可能状態(開始、実行、終了)にある事。
プロセスは必ずしも同じ瞬間(同時刻)に実行されていなくても良い。
 →シングルコア、マルチタスク(TSSによる時分割実行でも可)
parallel:2つ以上のプロセスが真に同時刻に実行される事。
 →マルチコア、マルチタスク

というニュアンスらしい。
概念的にはconcurrencyがparallelを内包している、という関係。
以上。