## Memo
- 1台のマシンに1000台のVMを高集積化できる?
## Memo with LLM
## Abstract
カーネル・バイパス・システムは、従来のオペレーティング・システム(OS)と比較して、ネットワーク集約型アプリケーションのスループットとテール・レイテンシが桁違いに向上することを実証してきた。しかし、このような優れたパフォーマンスを実現するためには、専用リソース(回転コア、固定メモリなど)に依存し、アプリケーションの書き換えが必要になる。クラウド事業者はアプリケーションの高密度実装を目指しており、クラウドソフトウェアの書き換えには貴重な開発者の時間を大量に投資する必要があるため、これは魅力的ではない。この2つの理由から、既存のカーネル・バイパスはクラウドでは実用的ではない。
本稿では、カーネル・バイパスの利点を最大限に引き出すために、これらの妥協が必要ないことを示す。Junctionは、修正されていないLinuxアプリケーションとの互換性を提供しながら、1台のマシンに数千のインスタンスをパックできる初のカーネルバイパスシステムです。Junctionは、ピンで固定されたメモリと多数のキューを監視するオーバーヘッドを削減するいくつかの高度なNIC機能によって高密度を達成します。また、アプリケーションとの共有アドレス空間を利用する最適化により、最小限のオーバーヘッドで互換性を維持します。Junctionは、既存のカーネルバイパスシステムよりも19~62倍多くのインスタンスにスケールし、コードを変更することなく同等以上のパフォーマンスを達成できます。さらに、Junctionは、Go、Java、Node、Pythonのようなランタイムシステムに依存するアプリケーションを含め、これまでカーネルバイパスではサポートされていなかったアプリケーションに大きなパフォーマンス上の利点を提供します。