Para disa javësh publikova . Duke qenë se Raspberry Pi 4 gjithashtu është e bazuar në ARM, disa nga optimizimet e përmendura në artikullin e mëparshëm janë të përshtatshme për të. Do doja të ndaja këto truke dhe të shihja nëse do të keni përmirësime të ngjashme në performancë.
Pas instalimit të Raspberry Pi në vërejta se në momentet e mungesës së memories së operativës, ajo bëhej shumë e papërgjegjshme dhe madje ngrinte. Për të zgjidhur këtë problem, shtova ZRAM dhe bëra disa ndryshime në parametrat e bërthamës.
Aktivizimi i ZRAM në Raspberry Pi

krijon një hapësirë ruajtjeje në memorie me emrin /dev/zram0 (ose 1, 2, 3, etj.). Fletët e shkruara aty shtypen dhe ruhten në memorie. Kjo mundëson një hyrje-dalje shumë të shpejtë dhe gjithashtu lirohet memorie përmes kompresionit.
Raspberry Pi 4 vjen me 1, 2, 4 ose 8 GB memorie RAM. Unë do të përdor modelin me 1 GB, prandaj rregulloni udhëzimin sipas modelit tuaj. Me 1 GB ZRAM, skedari i këmbimit i paracaktuar (i ngadalshëm!) do të përdoret më rrallë. Kam përdorur një skenar të tillë për instalimin dhe konfigurimin automatik.
Udhëzimet janë të disponueshme në depot përmes lidhjes më sipër. Instalimi:
git clone https://github.com/foundObjects/zram-swap.git
cd zram-swap && sudo ./install.shNëse dëshironi të redaktoni konfigurimin:
vi /etc/default/zram-swap Për më tepër, mund të aktivizoni ZRAM duke instaluar zram-tools. Nëse përdorni këtë metodë, sigurohuni që të redaktoni konfigurimin në skedarin /etc/default/zramswap, dhe vendosni rreth 1 GB ZRAM:
sudo apt install zram-toolsPas instalimit, mund të shihni statistikat e magazinimit ZRAM me komandën e mëposhtme:
sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 265472 5
pi@raspberrypi:~ $Shtojmë parametrat e bërthamës për përdorim më të mirë të ZRAM
Tani do të rregullojmë sjelljen e sistemit kur Raspberry Pi kalon në këmbim në momentin e fundit, çka shpesh çon në ngrirje. Do të shtojmë disa rreshta në dosjen /etc/sysctl.conf dhe do të riçelim.
Këto rreshta 1) zgjat ngjarjen e dështimit të memories, duke rritur presionin mbi cache-in e bërthamës dhe 2) fillojnë përgatitjet për dështimin e memories më herët, duke iniciuar paraprakisht swap-in. Por kjo do të jetë një swap më efektiv i memories së kompresuar përmes ZRAM!
Këto janë rreshtat që duhet të shtohen në fund të skedarit /etc/sysctl.conf:
vm.vfs_cache_pressure=500
vm.swappiness=100
vm.dirty_background_ratio=1
vm.dirty_ratio=50Më pas, riaktivojmë sistemin ose aktivizojmë ndryshimet me komandën në vijim:
sudo sysctl --systemvm.vfs_cache_pressure=500 rrit presionin mbi cache-in, çka rrit prirjen e bërthamës për të rikuperuar memorien e përdorur për caching të objekteve të katalogut dhe indekseve. Do të përdorni më pak memorie për një periudhë më të gjatë. Rënia e papritur e performancës përkryer nga një swap më i vonshëm.
vm.swappiness=100 rrit parametrin në sa agresivisht bërthama do të swap-in faqet e memories, pasi fillimisht përdorim ZRAM.
vm.dirty_background_ratio=1 & vm.dirty_ratio=50 â proceset nĂ« sfond do tĂ« fillojnĂ« shkrimin menjĂ«herĂ« sapo tĂ« arrijnĂ« limitin prej 1%, por sistemi nuk do ta detyrojĂ« pĂ«rparimin e hyrjes-daljes sinkron derisa tĂ« arrijĂ« dirty_ratio nĂ« 50%.
Këto katër rreshta (kur përdoren me ZRAM) do të ndihmojnë në përmirësimin e performancës nëse ju është e pashmangshme po mbaron memoria e operacionit dhe fillon kalimi në swapping, siç ndodhi me mua. Duke e ditur këtë fakt, si dhe duke marrë parasysh comprimimin e memories në ZRAM që është tre herë më i mirë, më mirë të filloni këtë swapping më herët.
Presioni në cache ndihmon, sepse për të vërtetë po i themi kernelit: "Hej, dëgjo, nuk kam më shumë memorie për ta përdorur për cache, prandaj, të lutem, hiq atë sa më shpejt dhe ruaj vetëm të dhënat më të përdorura/më të rëndësishme".
Madje edhe kur zvogëlohet caching, nëse me kalimin e kohës shumica e memories së instaluar është e mbushur, kernel do të fillojë swapping oportunistik shumë më herët, kështu që procesori (compressimi) dhe input/output i swap-it nuk do të priten deri në fund dhe të angazhojnë të gjitha burimet menjëherë, kur është tashmë shumë vonë. ZRAM përdor pak CPU për comprimim, por në shumicën e sistemeve me memorje të vogël, kjo ndikon shumë më pak në performancë sesa swapping pa ZRAM.
Në përfundim
Le të shikojmë përsëri rezultatin:
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 5264448 në ZRAM është pothuajse një gigabayt i të dhënave të papështjelluara. Të gjitha shkuan në ZRAM dhe asgjë nuk shkoi në skedarin e zërit që është shumë më i ngadaltë. Provoni këtë konfigurim vetë, funksionon në të gjitha modelet e Raspberry Pi. Një sistem i papërshtatshëm u shndërrua në një sistem funksional dhe stabil.
Në të ardhmen e afërt, shpresoj të vazhdoj dhe të përditësoj këtë artikull me disa rezultate të testeve të sistemit para dhe pas instalimit të ZRAM. Tani nuk kam kohë për këtë. Ndërkohë, mos hezitoni të kryeni testet tuaja dhe na tregoni në komentet. Raspberry Pi 4 është thjesht një bishë me këto konfigurime. Shijoni!
Për temën:
- (2017)
- (2020)
Burimi: habr.com
