Relaxed sequential とは

コンピュータ科学における緩やかな連続は、並列プログラムが連続して実行される能力を記述する実行モデルです。並列プログラムが有効な順次実行を有する場合、緩やかな順次実行モデルに従うと言われる。それは効率的である必要はありません。
リラックスという言葉は、シリアルプログラムが暗黙のシリアル依存性(プログラムカウンタなど)によって実際に過度に制約され、シーケンシャルに実行する機能を削除せずにできるだけ多くの並列性を導入できるという概念を指します。このモデルはできるだけリラックスしていると考えることができ、依然として1つのスレッドで正しく動作することができます。それが目標です。
ほとんどの並列プログラムは順番に実行できますが、存在する場合は並列処理の恩恵を受けます。正しい動作のために並列処理が必要なプログラムを設計することは可能です。 2つ以上のスレッドを必要とするように実装されたプロデューサ – コンシューマのようなアルゴリズムは、並行性が適切に動作することを要求する一例です。例えば、3つのアイテムと1つのスレッドが「PUT PUT PUT PUT」を実行し、別のスレッドが「GET GET GET GET」を実行し、それぞれが一度に4つのアクションしか実行しないプログラムを持つ、有界のコンテナを考えてみます。そのようなプログラムにはインターリーブ(並行処理)が必要です。並行性を必要とするプログラムは、デバッグするのがより困難です。有効な順次実行を持つプログラムをデバッグする方が簡単です。
並行性を要求するように設計されたプログラムは、デバッグすることがより困難です。同時実行を必要とするように設計されたプログラムは、必要なスレッドの数がハードウェアスレッドの数を超えた場合、パフォーマンスの問題を抱えます。