Prieš porą savaičių paskelbiau
Įdiegę Raspberry Pi savo
ZRAM aktyvinimas Raspberry Pi
Raspberry Pi 4 yra su 1, 2, 4 arba 8 GB RAM. Naudosiu 1 GB modelį, todėl koreguokite instrukcijas pagal savo modelį. Naudojant 1 GB ZRAM, numatytasis apsikeitimo failas (lėtas!) bus naudojamas rečiau. Aš naudojau šį scenarijų
Instrukcijos pateikiamos anksčiau pateiktoje saugykloje. Montavimas:
git clone https://github.com/foundObjects/zram-swap.git
cd zram-swap && sudo ./install.sh
Jei norite redaguoti konfigūraciją:
vi /etc/default/zram-swap
Be to, įdiegę galite aktyvuoti ZRAM zram-tools
. Jei naudojate šį metodą, būtinai redaguokite konfigūraciją faile /etc/default/zramswap
, ir įdiekite apie 1 GB ZRAM:
sudo apt install zram-tools
Įdiegę galite peržiūrėti ZRAM saugojimo statistiką naudodami šią komandą:
sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 265472 5
pi@raspberrypi:~ $
Branduolio parametrų pridėjimas, kad būtų geriau naudojamas ZRAM
Dabar pataisykime sistemos elgseną, kai Raspberry Pi paskutinę akimirką persijungia į keitimą, o tai dažnai sukelia užšalimą. Pridėkime prie failo kelias eilutes /etc/sysctl.conf ir paleiskite iš naujo.
Šios eilutės 1) atidės neišvengiamą atminties išsekimą, padidina branduolio talpyklos spaudimą ir 2) jie anksčiau pradeda ruoštis atminties išsekimui, iš anksto inicijuojant keitimą. Tačiau daug efektyviau bus pakeisti suspaustą atmintį per ZRAM!
Čia yra eilutės, kurias reikia pridėti failo pabaigoje /etc/sysctl.conf:
vm.vfs_cache_pressure=500
vm.swappiness=100
vm.dirty_background_ratio=1
vm.dirty_ratio=50
Tada iš naujo paleidžiame sistemą arba suaktyviname pakeitimus naudodami šią komandą:
sudo sysctl --system
vm.vfs_cache_pressure=500 padidina talpyklos spaudimą, o tai padidina branduolio tendenciją atgauti atmintį, naudojamą katalogų ir objektų indeksavimui. Ilgesnį laiką naudosite mažiau atminties. Staigų našumo sumažėjimą paneigia ankstesnis apsikeitimas.
vm.pasikeitimas = 100 padidina parametrą, kaip agresyviai branduolys keis atminties puslapius, nes pirmiausia naudojame ZRAM.
vm.dirty_background_ratio=1 & vm.dirty_ratio=50 - foniniai procesai pradės įrašinėti iškart pasiekus 1 % ribą, tačiau sistema neprivers sinchroninio įvesties/išvesties, kol nepasieks 50 % purvino_santykio.
Šios keturios eilutės (kai naudojamos su ZRAM) padės pagerinti našumą, jei turite neišvengiamai RAM baigiasi ir prasideda perėjimas prie apsikeitimo, kaip ir mano. Žinant šį faktą, taip pat atsižvelgiant į atminties suspaudimą ZRAM tris kartus, geriau pradėti šį apsikeitimą iš anksto.
Spaudimas talpyklai padeda, nes mes iš esmės sakome branduoliui: „Ei, žiūrėk, aš neturiu papildomos atminties, kurią galėčiau naudoti talpyklai, todėl atsikratykite jos kuo greičiau ir išsaugokite tik dažniausiai naudojamą/svarbiausią informaciją. duomenis“.
Net ir sumažinus talpyklą, jei laikui bėgant didžioji dalis įdiegtos atminties bus užimta, branduolys pradės oportunistinį keitimąsi daug anksčiau, todėl CPU (glaudinimas) ir apsikeitimo įvestis/išvestis nelauks iki paskutinės minutės ir išnaudos visus išteklius vienu metu, kai Per vėlu. ZRAM suspaudimui naudoja nedaug procesoriaus, tačiau daugumoje sistemų, kuriose yra nedidelis atminties kiekis, jis turi daug mažesnį poveikį našumui nei apsikeitimas be ZRAM.
užbaigiant
Dar kartą pažiūrėkime į 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 ZRAM yra beveik vienas gigabaitas nesuspaustų duomenų. Viskas nuėjo į ZRAM ir niekas nenuėjo į daug lėtesnį puslapio failą. Išbandykite šiuos nustatymus patys, jie veikia visuose Raspberry Pi modeliuose. Mano netinkama naudoti, užšalimo sistema virto funkcionalia ir stabilia.
Netolimoje ateityje tikiuosi tęsti ir atnaujinti šį straipsnį su kai kuriais sistemos testavimo rezultatais prieš ir po ZRAM įdiegimo. Dabar tiesiog neturiu tam laiko. Tuo tarpu nedvejodami atlikite savo testus ir praneškite man komentaruose. Raspberry Pi 4 yra žvėris su šiais nustatymais. Mėgautis!
Šiuo klausimu:
Šaltinis: www.habr.com