Prije nekoliko tjedana sam objavio
Nakon što instalirate Raspberry Pi u svoj
Aktiviranje ZRAM-a na Raspberry Pi
Raspberry Pi 4 dolazi s 1, 2, 4 ili 8 GB RAM-a. Koristit ću model od 1 GB, stoga prilagodite upute prema svom modelu. S 1 GB ZRAM-a, zadana swap datoteka (spora!) koristit će se rjeđe. Koristio sam ovu skriptu
Upute se nalaze u repozitoriju na koji je povezana gore. Montaža:
git clone https://github.com/foundObjects/zram-swap.git
cd zram-swap && sudo ./install.sh
Ako želite urediti konfiguraciju:
vi /etc/default/zram-swap
Osim toga, ZRAM možete aktivirati instaliranjem zram-tools
. Ako koristite ovu metodu, svakako uredite konfiguraciju u spisu /etc/default/zramswap
, i instalirajte oko 1 GB ZRAM-a:
sudo apt install zram-tools
Nakon instalacije možete vidjeti statistiku ZRAM pohrane sljedećom naredbom:
sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 265472 5
pi@raspberrypi:~ $
Dodavanje parametara jezgre za bolje korištenje ZRAM-a
Sada popravimo ponašanje sustava kada se Raspberry Pi u zadnji trenutak prebaci na swapping, što često dovodi do zamrzavanja. Dodajmo nekoliko redaka u datoteku /etc/sysctl.conf i ponovno pokrenite.
Ove linije 1) odgodit će neizbježno iscrpljivanje pamćenja, povećanje pritiska na predmemoriju kernela i 2) ranije se počinju pripremati za iscrpljenost pamćenja, pokrećući zamjenu unaprijed. Ali bit će puno učinkovitije zamijeniti komprimiranu memoriju kroz ZRAM!
Evo redaka koje treba dodati na kraj datoteke /etc/sysctl.conf:
vm.vfs_cache_pressure=500
vm.swappiness=100
vm.dirty_background_ratio=1
vm.dirty_ratio=50
Zatim ponovno pokrećemo sustav ili aktiviramo promjene sljedećom naredbom:
sudo sysctl --system
vm.vfs_cache_pressure=500 povećava pritisak u predmemoriju, što povećava tendenciju kernela da povrati memoriju koja se koristi za predmemoriju direktorija i indeksnih objekata. Dulje ćete koristiti manje memorije. Oštar pad performansi negiran je ranijom zamjenom.
vm.swappiness = 100 povećava parametar koliko će agresivno kernel mijenjati memorijske stranice, budući da prvo koristimo ZRAM.
vm.dirty_background_ratio=1 & vm.dirty_ratio=50 - pozadinski procesi će početi snimati odmah nakon dostizanja granice od 1%, ali sustav neće forsirati sinkroni I/O dok ne dosegne dirty_ratio od 50%.
Ova četiri retka (kada se koriste sa ZRAM-om) pomoći će poboljšati performanse ako ih imate neizbježno Ponestaje RAM-a i kreće prijelaz na swap, kao kod mene. Znajući ovu činjenicu, a također uzimajući u obzir kompresiju memorije u ZRAM-u tri puta, bolje je započeti ovu zamjenu unaprijed.
Pritisak na predmemoriju pomaže jer u biti govorimo kernelu: "Hej, gledaj, nemam dodatne memorije za predmemoriju, pa je se riješi što prije i pohranjuj samo najčešće korištene/važne podaci."
Čak i sa smanjenim predmemoriranjem, ako je tijekom vremena većina instalirane memorije zauzeta, kernel će započeti oportunističko mijenjanje puno ranije, tako da CPU (kompresija) i swap I/O neće čekati do posljednjeg trenutka i koristiti sve resurse odjednom kada prekasno je. ZRAM koristi malo CPU-a za kompresiju, ali na većini sustava s malom količinom memorije ima mnogo manji utjecaj na performanse nego swap bez ZRAM-a.
U zaključku
Pogledajmo ponovno rezultat:
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 u ZRAM-u je gotovo jedan gigabajt nekomprimiranih podataka. Sve je otišlo u ZRAM, a ništa nije otišlo u mnogo sporiju datoteku stranice. Isprobajte ove postavke sami, rade na svim Raspberry Pi modelima. Moj neupotrebljivi sustav za zamrzavanje pretvorio se u funkcionalan i stabilan.
Nadam se da ću u bliskoj budućnosti nastaviti i ažurirati ovaj članak s nekim rezultatima testiranja sustava prije i nakon instalacije ZRAM-a. Sada jednostavno nemam vremena za ovo. U međuvremenu, slobodno pokrenite vlastite testove i javite mi u komentarima. Raspberry Pi 4 je zvijer s ovim postavkama. Uživati!
Na temu:
Izvor: www.habr.com