Utendaji wa Raspberry Pi: kuongeza ZRAM na kubadilisha vigezo vya kernel

Wiki kadhaa zilizopita nilichapisha Mapitio ya Pinebook Pro. Kwa kuwa Raspberry Pi 4 pia ni msingi wa ARM, baadhi ya uboreshaji uliotajwa kwenye kifungu kilichopita ni sawa kwa hiyo. Ningependa kushiriki hila hizi na kuona kama utapata uboreshaji sawa wa utendaji.

Baada ya kusakinisha Raspberry Pi kwenye yako chumba cha seva ya nyumbani Niligundua kuwa wakati wa uhaba wa RAM ikawa haijibu na hata ikaganda. Ili kutatua tatizo hili, niliongeza ZRAM na kufanya mabadiliko machache kwa vigezo vya kernel.

Inawasha ZRAM kwenye Raspberry Pi

Utendaji wa Raspberry Pi: kuongeza ZRAM na kubadilisha vigezo vya kernel

ZRAM huunda hifadhi ya kuzuia katika RAM inayoitwa /dev/zram0 (au 1, 2, 3, nk). Kurasa zilizoandikwa hapo zimebanwa na kuhifadhiwa kwenye kumbukumbu. Hii inaruhusu I/O ya haraka sana na pia huweka kumbukumbu huru kupitia mgandamizo.

Raspberry Pi 4 inakuja na 1, 2, 4, au 8 GB ya RAM. Nitakuwa nikitumia modeli ya 1GB, kwa hivyo tafadhali rekebisha maagizo kulingana na muundo wako. Ukiwa na 1GB ZRAM, faili chaguo-msingi ya kubadilishana (polepole!) itatumika mara chache. Nilitumia maandishi haya zram-swap kwa usanidi na usanidi otomatiki.

Maagizo yametolewa kwenye hazina iliyounganishwa hapo juu. Usakinishaji:

git clone https://github.com/foundObjects/zram-swap.git
cd zram-swap && sudo ./install.sh

Ikiwa unataka kuhariri usanidi:

vi /etc/default/zram-swap

Kwa kuongeza, unaweza kuamsha ZRAM kwa kusakinisha zram-tools. Ikiwa unatumia njia hii, hakikisha kuhariri usanidi katika faili /etc/default/zramswap, na usakinishe takriban 1 GB ZRAM:

sudo apt install zram-tools

Baada ya usakinishaji, unaweza kuona takwimu za hifadhi ya ZRAM kwa amri ifuatayo:

sudo cat /proc/swaps
Filename				Type		Size	Used	Priority
/var/swap                               file		102396	0	-2
/dev/zram0                              partition	1185368	265472	5
pi@raspberrypi:~ $

Kuongeza vigezo vya kernel kwa matumizi bora ya ZRAM

Sasa hebu turekebishe tabia ya mfumo wakati Raspberry Pi inabadilika kwa kubadilishana wakati wa mwisho, ambayo mara nyingi husababisha kufungia. Hebu tuongeze mistari michache kwenye faili /etc/sysctl.conf na uwashe upya.

mistari hii 1) itachelewesha uchovu usioepukika wa kumbukumbu, kuongeza shinikizo kwenye kashe ya kernel na 2) wanaanza kujiandaa kwa uchovu wa kumbukumbu mapema, kuanzisha kubadilishana mapema. Lakini itakuwa bora zaidi kubadilishana kumbukumbu iliyoshinikwa kupitia ZRAM!

Hapa kuna mistari ya kuongeza mwishoni mwa faili /etc/sysctl.conf:

vm.vfs_cache_pressure=500
vm.swappiness=100
vm.dirty_background_ratio=1
vm.dirty_ratio=50

Kisha tunaanzisha upya mfumo au kuamsha mabadiliko kwa amri ifuatayo:

sudo sysctl --system

vm.vfs_cache_pressure=500 huongeza shinikizo la kache, ambayo huongeza tabia ya kernel ya kurejesha kumbukumbu inayotumiwa kuweka saraka na vitu vya index. Utatumia kumbukumbu kidogo kwa muda mrefu. Kushuka kwa kasi kwa utendakazi kunakataliwa na ubadilishaji wa mapema.

vm. furaha = 100 huongeza kigezo jinsi kernel itabadilishana kurasa za kumbukumbu kwa ukali, kwani tunatumia ZRAM kwanza.

vm.dirty_background_ratio=1 & vm.dirty_ratio=50 - michakato ya usuli itaanza kurekodi mara moja ikifikia kikomo cha 1%, lakini mfumo hautalazimisha I/O ya kusawazisha hadi ifikie dirty_ratio ya 50%.

Mistari hii minne (inapotumiwa na ZRAM) itasaidia kuboresha utendaji ikiwa unayo bila kuepukika RAM inaisha na mpito wa kubadilishana huanza, kama yangu. Kujua ukweli huu, na pia kwa kuzingatia ukandamizaji wa kumbukumbu katika ZRAM kwa mara tatu, ni bora kuanza kubadilishana hii mapema.

Kuweka shinikizo kwenye kashe husaidia kwa sababu kimsingi tunaiambia kernel, "Halo, angalia, sina kumbukumbu yoyote ya ziada ya kutumia kwa kashe, kwa hivyo tafadhali iondoe HARAKA na uhifadhi tu inayotumika mara kwa mara/muhimu. data."

Hata na caching iliyopunguzwa, ikiwa baada ya muda kumbukumbu nyingi zilizosanikishwa zimechukuliwa, kernel itaanza kubadilishana kwa urahisi mapema zaidi, ili CPU (compression) na kubadilishana I/O isingoje hadi dakika ya mwisho na kutumia rasilimali zote mara moja wakati. umechelewa. ZRAM hutumia CPU kidogo kwa mgandamizo, lakini kwenye mifumo mingi iliyo na kumbukumbu ndogo ina athari ndogo ya utendaji kuliko kubadilishana bila ZRAM.

Kwa kumalizia

Wacha tuangalie matokeo tena:

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 katika ZRAM ni karibu gigabyte moja ya data uncompressed. Kila kitu kilienda kwa ZRAM na hakuna kitu kilienda kwa faili ya ukurasa polepole zaidi. Jaribu mipangilio hii mwenyewe, inafanya kazi kwa mifano yote ya Raspberry Pi. Mfumo wangu usioweza kutumika, wa kufungia umegeuka kuwa kazi na imara.

Katika siku za usoni, ninatumai kuendelea na kusasisha nakala hii na matokeo kadhaa ya kujaribu mfumo kabla na baada ya kusakinisha ZRAM. Sasa sina wakati wa hii. Wakati huo huo, jisikie huru kuendesha majaribio yako mwenyewe na unijulishe kwenye maoni. Raspberry Pi 4 ni mnyama aliye na mipangilio hii. Furahia!

Na mada:

Chanzo: mapenzi.com

Kuongeza maoni