Saya menggunakan zram di komputer saya sebagai swap yang didukung RAM terkompresi. Ketika sistem perlu menukar sesuatu, menukarnya ke file swap yang didukung zram kurang lebih sama dengan mengompresi data dalam memori untuk mengosongkan ruang. Ini membuat swapping sangat cepat hampir sepanjang waktu, relatif terhadap swap yang didukung disk. Karena itu, saya bertanya-tanya apakah ada beberapa kinerja yang dapat diperoleh dengan mendorong sistem untuk menukar barang yang tidak digunakan secara lebih agresif, karena dapat melakukannya tanpa benar-benar mengenai disk?
Jadi, apakah ada orang yang mengacaukan, katakanlah, menyetel vm.swappiness
ke 100 saat menggunakan zram? Apakah ini diinginkan?
sysctl -w vm.swappiness=100
Jawaban yang Diterima:
Jawaban singkat:vm.swappiness=100
adalah nilai yang sesuai untuk zram(Setidaknya pada Debian Stretch dengan Linux 4.9 , saya yakin itu adalah nilai terbaik )
Saya sudah menguji vm.swappiness=100
untuk saya.
Saya pikir Anda dapat melakukan beberapa tes sederhana untuk memastikan nilai mana yang terbaik untuk Anda.
Saya juga membuat program sederhana lain untuk menguji pertanyaan ini.
x
Pada mesin saya vm.swappiness
yang sangat rendah nilai (seperti vm.swappiness=1
) akan menyebabkan masalah respons yang jelas.
Tentang SwapCached
di /proc/meminfo
:
Pertama, coba vm.page-cluster=0
, ini mungkin dapat mengurangi beberapa SwapCached
yang tidak berguna dari swap-in.
SwapCached dapat mempercepat zram sama seperti perangkat swap non-zram
SwapCached
dapat digunakan kembali (gratis) bila perlu:
./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$