空きRAMを準備するためにLinuxカーネルを調整する方法は?

空きRAMを準備するためにLinuxカーネルを調整する方法は?

私のシステムはメモリ使用量が非常に高く、ディスクアクティビティも多いです。したがって、キャッシュにできるだけ多くのファイルが必要ですが、より短い時間でより多くのRAMが必要なユーザーモードプロセスにすばやく応答するのに十分なRAMを必要とします。私は基本的に「常に」必要なRAMの一般的な量を準備することで、突然のユーザーモードメモリ割り当ての待ち時間を減らそうとしています。メモリピークが300〜500 MBの範囲にあると予想しているため、ほとんどの時間に十分な空きRAMを確保することを期待しています。

メモリが足りなくなった場合、増やすとRAMに多くのディスクキャッシュが保持されることがわかっているので、このように/proc/sys/vm/vfs_cache_pressure設定しました120(これによりキャッシュが向上し、dentries私のワークロードに良いと思います)。また、予約されたRAMが何であるかを知っているので、/proc/sys/vm/min_free_kbytes常に300MBの空き容量を確保できるようにこれを300000に設定しました。

しかし、ユーザーモードプロセスではmin_free_kbytesカーネルにこれを指示するために使用できるカーネル設定はありますか?努力する300MBのRAMを準備しておきますか?つまり、ユーザーモードプログラムにRAMが必要な場合は、その予約ですぐに提供してください。そして将来のユーザーモードプロセス用に予約されたメモリと再一致するようにバックグラウンドプロセスを開始して、より多くの使用可能なRAMを取得します(ダーティページ書き込み、一部のディスクキャッシュの消去など)。

min_free_kbytes私が正しく理解している場合は、ディスクキャッシュには使用できませんが、すべてのユーザープロセスが自由に割り当てることができるメモリを除いて、メモリを予約する設定を探しています。

ベストアンサー1

おすすめ記事