Linuxマルチプロセッサのサポート

Linuxマルチプロセッサのサポート

私は次を読んでいます。論文では、著者は最初のページの最後の段落でUnix / Linuxが「単一ノードで複数のプロセッサをサポートするために10年間努力してきた」と述べました。この文がどういう意味なのか理解できません。 Unix / Linuxでマルチプロセッサをサポートするのはなぜそれほど難しいのですか?これを難しくするのがUnix / Linuxのアーキテクチャですか?

答え1

引用数行の上の「年齢」の段落では、この論文は4つの参考資料を提供します。

Linuxは10年間、マルチコアを完全に活用しようとしてきました[14、20、22、34]。

これらの参考資料は次のとおりです。

  • Linuxネットワーキングスタックの拡張(カーネル文書の一部)、マルチプロセッサシステムでネットワークパフォーマンスを向上させるさまざまな技術について説明します。
  • Silas Boyd-Wickizer、Austin T. Clements、Yandong Mao、Aleksey Pesterev、M. Frans Kaashoek、Robert Morris、Nickolai Zeldovich. 2010. Linuxマルチコア拡張性分析。存在するオペレーティングシステムの設計と実装に関する第9次USENIX会議の進行(バンクーバー、ブリティッシュコロンビア、カナダ)(OSDI'10)。 USENIX協会、米国、1-16。
  • チェ・チャンソプ、ジェレミー・ケフナー、ウィリアム・アルカンド、デビッド・ベスター、ウィリアム・バーガーロン、マシュー・ハベル、ビジェイ・ガーデパリ、マイケル・ホール、マイケル・ジョーンズ、アンクラインなど2019。インタラクティブなデータ分析のためにXeon Phiを最適化します。存在する2019 IEEE高性能エクストリームコンピューティングカンファレンス(HPEC)。 IEEE、1-6。
  • Jean-Pierre Lozzi, Baptiste Lepers, Justin Funston, Fabian Gaude, Vivian Quaima, Alexandra Fedorova. 2016. Linuxスケジューラ:無駄なコアの10年。存在する第11次コンピュータシステムに関する欧州会議の出版物(イギリスロンドン)(欧州システム '16)。コンピュータ機械協会、ニューヨーク、ニューヨーク、米国、記事1、p。https://doi.org/10.1145/2901318.2901326

4つの参考資料すべてに精通しているわけではありませんが、最初の参照はネットワークの制限を暗示し、最後の参照は、実行可能なスレッドが待機中であっても、使用可能なコアがアイドル状態を維持するスケジューラのバグの例です。

したがって、この意見の意味についての質問に対する答えは、マルチプロセッサ(またはコア)を持つシステムで実行するときにLinuxカーネルのパフォーマンスが理想的ではない(少し表現すると)インスタンスがあるようです。

これはコメントの問題ですが(UNIXとLinuxでは)マルチプロセッサのサポートが困難であることが証明された主な理由は、多くの人が同時実行性を推論するのが難しく、両方のシステムが同時システムを起動したことがなく、同時サポートを追加したためだと思います。アーキテクチャいいえ大規模な再設計 - Linuxでは、最初に悪名高い大きなカーネルロックを使用しました。私は質問が次のようには思わない。建築学UNIXまたはLinux自体で導入された同時プラットフォームを適切にサポートする必要がある根本的な問題は、少なくとも対称型マルチプロセッシングシステムでは解決されました。

(あなたは見つけることができますオペレーティングシステムがハードウェアを再発見する必要がある時です。興味深い。 )

関連情報