Beberapa minggu yang lalu saya memposting
Setelah menginstal Raspberry Pi di Anda
Mengaktifkan ZRAM di Raspberry Pi
Raspberry Pi 4 hadir dengan RAM 1, 2, 4, atau 8 GB. Saya akan menggunakan model 1GB, jadi harap sesuaikan petunjuknya berdasarkan model Anda. Dengan ZRAM 1 GB, file swap default (lambat!) akan lebih jarang digunakan. Saya menggunakan skrip ini
Instruksi disediakan di repositori yang ditautkan di atas. Instalasi:
git clone https://github.com/foundObjects/zram-swap.git
cd zram-swap && sudo ./install.sh
Jika Anda ingin mengedit konfigurasi:
vi /etc/default/zram-swap
Selain itu, Anda dapat mengaktifkan ZRAM dengan menginstal zram-tools
. Jika Anda menggunakan metode ini, pastikan untuk mengedit konfigurasinya dalam file /etc/default/zramswap
, dan instal sekitar 1 GB ZRAM:
sudo apt install zram-tools
Setelah instalasi, Anda dapat melihat statistik penyimpanan ZRAM dengan perintah berikut:
sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 265472 5
pi@raspberrypi:~ $
Menambahkan parameter kernel untuk penggunaan ZRAM yang lebih baik
Sekarang mari kita perbaiki perilaku sistem ketika Raspberry Pi beralih ke swapping di saat-saat terakhir, yang sering kali menyebabkan macet. Mari tambahkan beberapa baris ke file /etc/sysctl.conf dan reboot.
Baris-baris ini 1) akan menunda kelelahan ingatan yang tak terhindarkan, meningkatkan tekanan pada cache kernel dan 2) mereka mulai bersiap menghadapi kelelahan ingatan lebih awal, memulai pertukaran terlebih dahulu. Namun akan jauh lebih efisien jika menukar memori terkompresi melalui ZRAM!
Berikut adalah baris yang perlu ditambahkan di akhir file /etc/sysctl.conf:
vm.vfs_cache_pressure=500
vm.swappiness=100
vm.dirty_background_ratio=1
vm.dirty_ratio=50
Kemudian kita reboot sistem atau aktifkan perubahannya dengan perintah berikut:
sudo sysctl --system
vm.vfs_cache_pressure=500 meningkatkan tekanan cache, yang meningkatkan kecenderungan kernel untuk mendapatkan kembali memori yang digunakan untuk menyimpan direktori cache dan mengindeks objek. Anda akan menggunakan lebih sedikit memori untuk jangka waktu yang lebih lama. Penurunan tajam dalam kinerja ditiadakan dengan pertukaran sebelumnya.
vm.swappiness = 100 meningkatkan parameter seberapa agresif kernel menukar halaman memori, karena kita menggunakan ZRAM terlebih dahulu.
vm.dirty_background_ratio=1 & vm.dirty_ratio=50 - proses latar belakang akan mulai merekam segera setelah mencapai batas 1%, namun sistem tidak akan memaksa I/O sinkron hingga mencapai dirty_ratio sebesar 50%.
Keempat baris ini (bila digunakan dengan ZRAM) akan membantu meningkatkan kinerja jika Anda punya pasti RAM habis dan transisi ke swap dimulai, seperti milik saya. Mengetahui fakta ini, dan juga memperhitungkan kompresi memori di ZRAM sebanyak tiga kali, lebih baik memulai pertukaran ini terlebih dahulu.
Memberi tekanan pada cache akan membantu karena pada dasarnya kita memberi tahu kernel, "Hei, lihat, saya tidak punya memori tambahan untuk digunakan sebagai cache, jadi tolong hapus secepatnya dan hanya simpan memori yang paling sering digunakan/penting saja." data."
Bahkan dengan pengurangan caching, jika seiring waktu sebagian besar memori terpasang terisi, kernel akan memulai pertukaran oportunistik jauh lebih awal, sehingga CPU (kompresi) dan I/O swap tidak akan menunggu hingga menit terakhir dan menggunakan semua sumber daya sekaligus ketika itu sudah terlambat. ZRAM menggunakan sedikit CPU untuk kompresi, tetapi pada sebagian besar sistem dengan jumlah memori yang kecil, dampak kinerjanya jauh lebih kecil dibandingkan swap tanpa ZRAM.
Sebagai kesimpulan
Mari kita lihat kembali hasilnya:
pi@raspberrypi:~ $ free -h
total used free shared buff/cache available
Mem: 926Mi 471Mi 68Mi 168Mi 385Mi 232Mi
Swap: 1.2Gi 258Mi 999Mi
pi@raspberrypi:~ $ sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 264448 5
264448 di ZRAM hampir satu gigabyte data yang tidak terkompresi. Semuanya masuk ke ZRAM dan tidak ada yang masuk ke file halaman yang jauh lebih lambat. Coba sendiri pengaturan ini, ini berfungsi pada semua model Raspberry Pi. Sistem pembekuan saya yang tidak dapat digunakan telah berubah menjadi sistem yang fungsional dan stabil.
Dalam waktu dekat saya berharap dapat melanjutkan dan mengupdate artikel ini dengan beberapa hasil pengujian sistem sebelum dan sesudah instalasi ZRAM. Sekarang saya tidak punya waktu untuk ini. Sementara itu, silakan jalankan pengujian Anda sendiri dan beri tahu saya di komentar. Raspberry Pi 4 adalah monster dengan pengaturan ini. Menikmati!
Pada subjek:
Sumber: www.habr.com