私のコンピュータでは、圧縮RAMサポートスワップ領域としてzramを使用しています。システムが何かを交換する必要があるときにzramサポートスワップファイルに置き換えることは、スペースを確保するためにメモリ内のデータを圧縮するのとほぼ同じです。これにより、ほとんどの場合、ディスクサポートスワップと比較してスワップが非常に高速になります。もしそうなら、システムが実際にディスクにアクセスせずに未使用のコンテンツをより積極的に交換することを奨励することで、どれくらいのパフォーマンスが得られるのか疑問に思います。
vm.swappiness
それでは、zramを100に設定するなど、いたずらをする人はいますか?これが望ましいですか?
sysctl -w vm.swappiness=100
ベストアンサー1
短い答え:vm.swappiness=100
はい適切な値zramの場合(少なくともDebian StretchとLinux 4.9ではこれが最も価値があると思います)
私はvm.swappiness=100
それをテストしました。
私の考えでは、あなたができると思います。いくつかの簡単なテストあなたに最適な値を決定します。
私もそうだった別の簡単なプログラムこの問題をテストするには。私のコンピュータでは、非常に低いvm.swappiness
値(たとえばvm.swappiness=1
)が原因で顕著な応答の問題が発生します。
についてSwapCached
:/proc/meminfo
まずvm.page-cluster=0
これを試してみてください。無駄な交換を減らすこともできますSwapCached
。
SwapCachedは、zramではなくスワップデバイスのようにzramを高速化できます。
SwapCached
必要に応じて再利用可能(無料):
./linux-4.9/mm$ grep -rn delete_from_swap_cache
memory-failure.c:715: delete_from_swap_cache(p);
shmem.c:1115: delete_from_swap_cache(*pagep);
shmem.c:1645: * unaccounting, now delete_from_swap_cache() will do
shmem.c:1652: delete_from_swap_cache(page);
shmem.c:1668: delete_from_swap_cache(page);
vmscan.c:673: __delete_from_swap_cache(page);
swap_state.c:137:void __delete_from_swap_cache(struct page *page)
swap_state.c:218:void delete_from_swap_cache(struct page *page)
swap_state.c:227: __delete_from_swap_cache(page);
swapfile.c:947: delete_from_swap_cache(page);
swapfile.c:987: delete_from_swap_cache(page);
swapfile.c:1023: delete_from_swap_cache(page);
swapfile.c:1571: delete_from_swap_cache(page);
./linux-4.9/mm$