MUP (Multi Uni Processors) はマルチコア プロセッサと同じですか? それとも、通信用に相互接続された個別の CPU を持っていますか? AMP はまだ違うと思います。誰でも明確にできますか?RTAI (Linux へのリアルタイム拡張) スケジューラについて読んでいるときに、これに遭遇しました..リンクと、できれば最初の行と関連する最後のパラグラフを確認してください.. https://www.rtai.org/userfiles/documentation/magma/html/ api/sched_overview.html
1 に答える
これは、3 種類のスケジューラのいずれかを指定する RTAI ( http://en.wikipedia.org/wiki/RTAI、https://www.rtai.org/ ) 固有の用語です。それらは 2003 年の論文で定義されましたhttps://www.rtai.org/userfiles/documentation/documents/motioncontrol2003.pdf
「低コストで高性能なモーション コントロールにおける Linux Real Time Application Interface (RTAI)」
RTAI は 3 つのスケジューラーを利用可能にします。対称型マルチプロセッサ アプリケーション用の対称型マルチ プロセッサ (SMP) およびマルチ ユニプロセッサ (MUP)。SMP スケジューラーは、RTAI の適切なカーネル タスクを使用して、カーネル空間アプリケーションの柔軟性と効率性の間で最良の妥協点を提供します。これは、特定の CPU または CPU クラスターで実行するように選択したタスクを選択的に強制しながら、任意の CPU で準備完了のタスクをスケジュールできるためです。代わりに、MUP スケジューラーは、任意のタスクがその作成時から特定の CPU に割り当てられるように強制し、メモリ キャッシングをより効率的に利用できるため、パフォーマンスを向上させることができます。... スケジューラの使用に制限はありません。実行中の CPU に関係なく、リアルタイム タスクは制約なしで対話できます。
そのため、「UP」スケジューラはプロセッサのシングル コアのみを使用できます。「SMP」スケジューラは、複数のコア (または CPU クラスター - NUMA の物理プロセッサ) を使用してそれらのタスクを計画し、1 つのコアから別のコアにタスクを再マップできます。また、「MUP」スケジューラは複数のコアを使用できますが、タスクをあるコアから別のコアに移動することはありません。タスクがキャッシュされたデータから移動される可能性がある「SMP」とは異なり、タスクは常に MUP を使用して最も近いキャッシュにデータを保持します。
一部のリソースは MUP スケジューラで共有されません。これは、1 台のマシンで複数のリアルタイム タスクを組み合わせるのに役立ちます。MUP は CPU ごとに 1 つのタイマーを使用します (そして SMP には共通のタイマーがありますか?):
また、MUP スケジューラは CPU ごとに独立したタイマーを使用し、それぞれが他のタイマーとは独立して実行できるため、タイマーの動作モードを自由に割り当てることができることに注意することも重要です。同じ時期に実行します。
www.cs.ucf.edu/~lboloni/Teaching/EEL6897_2007/presentations/ZubairIlhan_RTAI.ppt
SMP&MUP スケジューラー
- SMP は、タスクを複数の CPU にスケジュールできます。特定の CPU でさまざまな程度の追加サービスを処理できます。
- SMP スケジューラーは、優先度駆動型のスケジューラーのままです。
- MUP スケジューラは、マルチプロセッサ マシンを多くのユニプロセッサの集まりと見なします。各 CPU は、タイマーを別々にプログラムすることができます。
- MPU を使用すると、CPU を定期モードで実行しながら、別の CPU をワンショット モードで実行できます。