仮想化(KVM)とあまりにも多くのキャッシュRAM

仮想化(KVM)とあまりにも多くのキャッシュRAM

KVM-libvirt(virt-manager)を介してWindows 10に仮想マシンを設定しましたが、ホスト側で奇妙な動作が発生します。私は24GBのRAM(12GBがRAMに割り当てられ、12個が仮想マシンに割り当てられている)を持つ64ビットArchホストを実行しています。

VMの電源を入れてしばらく(長すぎず、1時間ほど)放置すると、ホスト全体の残りのRAMがバッファリング/キャッシュされます。たとえば、次のようにこれを取得しますfree -m

              total        used        free      shared  buff/cache   available
Mem:          24064       13887         253         110        9923        9957
Swap:          4095        1313        2782

VMを起動する前にいくつかのアプリケーションを実行しましたが、RAMは2 GBを超えず、それ以降は新しいものを開いておらず、一般的なWebナビゲーションだけでした(実際にこの質問を書きました)。

今、私は空きRAMがRAMを無駄にするなど、LinuxキャッシュRAMについてたくさん読んでいますが、これはホスト上で実行されているほとんどすべてを置き換えます。すべてがそうなるので、これは私にとって大きな問題です。だから遅い。

私が知っている限り、RAMキャッシュはメモリスワッピングを引き起こすべきではありません。私はLinuxがそれより優れていることを知っています。効率的なメモリ使用量に関しては、たとえばスワップやキャッシュを消去することはできませんが、すべてを交換してシステムの速度を大幅に遅くすることは、私にとって賢明または効率的に聞こえません。

何が起こりましたか? Linuxキャッシュ仮想マシンのディスクアクセスが常に私のRAMの残りのスペースをすべて使用するのはなぜですか? VMはディスクイメージにインストールされていますが、そのために別々の物理ディスクを使用する必要がありますか?

関連情報