高スワップ環境のためのカーネル微調整

高スワップ環境のためのカーネル微調整

私は8GB RAM Dell XPS13 9343を所有しています。 RAM容量がこのコンピュータの最大の問題です。 CPUがより多くのRAMをサポートしているにもかかわらず、ファームウェアの変更でより大きなRAMを再はんだ付けすることもマザーボードの設計のためオプションではありません。そのため、このコンピュータをまだ便利にするために、M.2 SATAディスクをより高速なM.2 NVMeディスクに置き換え、2つの追加のスワップファイルを追加しました。

インターネットナビゲーションの標準構成は8GM RAM + 8GMスワップパーティションで、必要に応じてext4 /(ルート)に2つの追加スワップファイルがあります。これは合計32 GBのスワップが含まれることに言及する価値があります。暗号化されたLUKS + LVMでは、これはコンピュータの電源が切れたときにRAMを公開したくないため、意図的です。

この設定は通常動作します。大量のメモリ(通常はJava +ブラウザベースのコンテンツ、時には単一の仮想マシン)を有効にすると、両方のスワップファイルがオンになり、必要なすべてのアプリが起動した後の合計ロードは20を超えません。 % CPU と総ディスク I/O は 20M/s を超えません。

質問の一部:時々完全な解決策 - 週に1回、週に数回メモリ集約的なタスクを使用すると、不安定または信頼できなくなります。時には再起動します。一部のハードウェアの問題によるカーネルパニックであるかどうかはわかりませんが、グラフィックカードのバッファが破損しにくくなります。 1秒以内にコンピュータが再起動します。 Dellのファームウェアのおかげで、UEFIはNVMeディスクを認識せず、起動段階でのみrEFIndをUSBに挿入する必要があるため、kdump-toolsを使用してカーネルパニックをデバッグすることはできません。時々、CPUの負荷が増加し、バックグラウンドで音楽を再生すると、X11で途切れが発生し始めます。

それはまともなハードウェアではないため、一部が予想されますが、このロードがオーディオバッファに影響を与える可能性があるという心配になるため、これをより安定させる方法を探しています。 IMHOのロードは、そのシステムを作成せず、ユーザースペースアプリにのみ影響を与える必要があります。広範な問題。

私はUbuntuを使用しており、待ち時間の短いカーネルがあることを知っていますが、ファイル記述子の量やいくつかの割り当てに関連するなど、実行時に前後に切り替えることができる軽いソリューションを最初にテストできるかどうか疑問に思います。 cgroupによる優先順位?

ベストアンサー1

スワップは常に非常に非効率的であり、これにできることはあまりありません。試してみるには2つのオプションがあります。ズラムそしてzswap。どちらもRAMを使用してスワップをより便利にします。

Zramを使用すると、メモリからスワップを作成できます。スワップとして使用する新しいブロックデバイスを作成しますが、ここに保存されているページは圧縮され、約50%の圧縮率を達成できます(したがってzramでは2GiBスワップ)。ディスクの4GiBスワップとほぼ同じで、はるかに高速です。

Zswapはzramに似ていますが、ディスクをスワップするためのキャッシュです。 zswapに保存されているページは、zswapが容量に達したときにのみ圧縮され、ディスクに書き込まれます。

おすすめ記事