Saya mengkonfigurasi & mengkompilasi kernel 3.0 baru. Salah satu barang yang saya rencanakan untuk digunakan untuk beberapa waktu (dengan menambal) yang digabung menjadi 3.0 adalah zram.
Apakah mungkin untuk mengatur hdd swap dan zram swap sehingga zram digunakan terlebih dahulu dan hanya halaman yang tumpah yang dimasukkan ke dalam swap aktual?
linux
swap
zram
virtual-memory
Maciej Piechotka
sumber
sumber
max_comp_streams
tampaknya1
sesuai dengan dokumentasi . Saya belum memeriksa apakah parameter itu ada pada 2011 tetapi tampaknya menjadi pilihan yang lebih baik daripada beberapa file swap.zram-config
bawah Ubuntu (dan kemungkinan debian) Saya mencatat bahwa konfigurasi default ke 1 per core atau utas (2 pada E2140 dual core lama dan 4 pada i3-3220)swapon
memiliki-p
saklar yang menetapkan prioritas. Saya dapat mengatur:Atau di / etc / fstab:
EDIT: Hanya untuk solusi lengkap - baris seperti itu mungkin bermanfaat sebagai aturan udev:
sumber
Pilih berapa banyak perangkat zram yang Anda inginkan dengan melewati
ke parameter kernel atau langsung ke modul (tanpa zram.). Nilai standarnya adalah 1. zram akan dapat memanfaatkan CPU sebanyak jumlah perangkat yang Anda buat.
Siapkan perangkat zram0, atur ukuran ke 1GB.
Atau Anda dapat melakukannya dengan aturan udev. Buat swap di zram0
dan mengaktifkannya dengan prioritas lebih tinggi daripada perangkat swap lainnya
sumber
zram0
danzram1
nilai 10 pada kotak 2 inti Intel T9300, melempar saya dengan:swapon: /dev/zram0 or 1: swapon failed: Device or resource busy
.Untuk beberapa alasan tampaknya ada banyak salah tafsir tentang https://www.kernel.org/doc/Documentation/blockdev/zram.txt
Ini dengan jelas menyatakan:
Tetapi ada mitos urban yang umum dan persisten bahwa max stream adalah 1.
Jelas tidak benar.
Dua OS di mana zram telah membuktikan Chrome OS & Android yang efektif sebagai satu perangkat. Mereka juga men-tweak
page-cluster
:- dari dokumentasi kernel untuk
/proc/sys/vm/*
Jadi gunakan
echo "0" > /proc/sys/vm/page-cluster
untuk memaksa satu halaman.Banyak yang tampaknya berasal dari zram_config paket debian / ubuntu yang karena beberapa alasan tampaknya memiliki korelasi yang sangat sedikit dengan dokumen kernel untuk zram dan telah menghasilkan serangkaian bisikan Cina yang pada dasarnya bisa sepenuhnya salah.
Dengan swap file, apakah Anda membuat drive swap untuk setiap inti? Mungkin itu bisa menjawab pertanyaan Anda. Juga untuk mencadangkan ini Googles Chrome OS & Android yang berhasil menggunakan cluster-halaman di atas karena tidak cocok dengan disk sehingga latensi dapat ditingkatkan, satu perangkat.
Juga untuk sys-admin apa yang penting penggunaan mem aktual atau penggunaan mem vm? Sebagian besar contoh memperlihatkan kreasi melalui disk_size dan abaikan mem_limit. disk_size = ukuran vm tidak terkompresi. mem_limit = batas jejak kaki aktual.
Ini semacam membuat pilihan disk_size membingungkan karena ukurannya max virtual tergantung pada rasio comp_alg dan overhead 0,1% dari ukuran disk ketika tidak digunakan dan benar-benar merupakan perkiraan angka dari mem_limit * (sekitar 2 - 4) dari frugal vs optimisme.
zram_config bahkan tidak memeriksa penggunaan layanan sebelumnya dan menimpa sementara pemeriksaan sederhana dari kelas sistem zram seperti kehendak di bawah ini.
sumber
Ketika Anda mengaktifkan zram, itu akan secara otomatis memiliki prioritas.
Untuk ubuntu 16.04:
/usr/bin/init-zram-swapping
Anda dapat mengedit file itu (membuat cadangan 1), untuk menurunkan ram nyata yang digunakan, saya mengubah baris mem ke ini:
sumber