Raspberry Pi kev ua tau zoo: ntxiv ZRAM thiab hloov cov ntsiav tsis

Ob peb lub lis piam dhau los kuv tau tshaj tawm Pinebook Pro tshuaj xyuas. Txij li thaum Raspberry Pi 4 tseem yog ARM-raws li, qee qhov kev ua kom zoo dua tau hais hauv tsab xov xwm dhau los yog qhov tsim nyog rau nws. Kuv xav qhia cov tswv yim no thiab saib seb koj puas muaj kev txhim kho tib yam.

Tom qab txhim kho Raspberry Pi hauv koj chav tsev server Kuv pom tias nyob rau lub sijhawm ntawm RAM tsis txaus nws dhau los ua tsis zoo thiab txawm tias khov. Txhawm rau daws qhov teeb meem no, kuv ntxiv ZRAM thiab ua qee qhov kev hloov pauv rau cov ntsiab lus kernel.

Qhib ZRAM ntawm Raspberry Pi

Raspberry Pi kev ua tau zoo: ntxiv ZRAM thiab hloov cov ntsiav tsis

ZRAM tsim ib qho thaiv cia hauv RAM npe / dev / zram0 (los yog 1, 2, 3, thiab lwm yam). Cov nplooj ntawv sau muaj compressed thiab khaws cia rau hauv lub cim xeeb. Qhov no tso cai rau I / O ceev heev thiab tseem tso lub cim xeeb los ntawm compression.

Raspberry Pi 4 los nrog 1, 2, 4, lossis 8 GB ntawm RAM. Kuv yuav siv tus qauv 1GB, yog li thov kho cov lus qhia raws li koj tus qauv. Nrog 1 GB ZRAM, cov ntaub ntawv pauv hloov pauv (qeeb!) yuav siv tsawg dua. Kuv siv tsab ntawv no zram-swap rau installation thiab tsis siv neeg configuration.

Cov lus qhia muaj nyob rau hauv lub repository txuas saum toj no. Kev teeb tsa:

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

Yog tias koj xav hloov kho config:

vi /etc/default/zram-swap

Tsis tas li ntawd, koj tuaj yeem qhib ZRAM los ntawm kev txhim kho zram-tools. Yog tias koj siv txoj kev no, nco ntsoov hloov cov config hauv cov ntaub ntawv /etc/default/zramswap, thiab nruab txog 1 GB ZRAM:

sudo apt install zram-tools

Tom qab kev teeb tsa, koj tuaj yeem saib ZRAM khaws cov txheeb cais nrog cov lus txib hauv qab no:

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

Ntxiv kernel parameters rau kev siv ZRAM zoo dua

Tam sim no cia peb txhim kho tus cwj pwm ntawm lub kaw lus thaum Raspberry Pi hloov pauv mus rau lub sijhawm kawg, uas feem ntau ua rau khov. Cia peb ntxiv ob peb kab rau hauv cov ntaub ntawv /etc/sysctl.conf thiab reboot.

Cov kab no 1) yuav ncua lub inevitable qaug zog ntawm nco, nce siab ntawm cov ntsiav cache thiab 2) lawv pib npaj rau kev nco qaug zog ua ntej, pib swapping ua ntej. Tab sis nws yuav ua tau ntau npaum li cas los pauv compressed nco los ntawm ZRAM!

Nov yog cov kab ntxiv rau qhov kawg ntawm cov ntaub ntawv /etc/sysctl.conf:

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

Tom qab ntawd peb reboot lub kaw lus lossis qhib cov kev hloov pauv nrog cov lus txib hauv qab no:

sudo sysctl --system

vm.vfs_cache_pressure=500 nce cache siab, uas ua rau cov kernel txoj kev xav rov qab nco qab siv rau cache directory thiab index khoom. Koj yuav siv lub cim xeeb tsawg dua rau lub sijhawm ntev. Kev poob qis hauv kev ua tau zoo yog negated los ntawm kev sib pauv ua ntej.

vm.swappiness = 100 tsub kom qhov parameter li cas aggressively lub kernel yuav swap nco nplooj ntawv, txij li thaum peb siv ZRAM ua ntej.

vm.dirty_background_ratio=1 & vm.dirty_ratio=50 - Cov txheej txheem keeb kwm yav dhau los yuav pib kaw tam sim ntawd thaum ncav cuag 1% txwv, tab sis lub kaw lus yuav tsis yuam synchronous I / O kom txog thaum nws mus txog qhov qias neeg_ratio ntawm 50%.

Cov plaub kab no (thaum siv nrog ZRAM) yuav pab txhim kho kev ua haujlwm yog tias koj muaj inevitably Lub RAM khiav tawm thiab kev hloov pauv hloov pib, zoo li kuv. Paub qhov tseeb no, thiab tseem coj mus rau hauv tus account lub cim xeeb compression hauv ZRAM los ntawm peb zaug, nws yog qhov zoo dua los pib qhov kev sib pauv ua ntej.

Kev tso siab rau lub cache pab vim tias peb tseem ceeb qhia lub kernel, "Hav, saib, Kuv tsis muaj lub cim xeeb ntxiv los siv rau lub cache, yog li thov tshem tawm nws ASAP thiab tsuas yog khaws cov khoom siv feem ntau / tseem ceeb. cov ntaub ntawv."

Txawm tias muaj kev txo qis, yog tias dhau sij hawm feem ntau ntawm cov cim xeeb tau nyob, cov ntsiav yuav pib siv sijhawm sib pauv ntau dhau los, yog li ntawd CPU (compression) thiab sib pauv I / O yuav tsis tos txog lub sijhawm kawg thiab siv tag nrho cov peev txheej ib zaug thaum nws lig dhau lawm. ZRAM siv me ntsis CPU rau compression, tab sis nyob rau hauv feem ntau cov tshuab nrog me me ntawm lub cim xeeb nws muaj ntau yam tsawg ntawm kev ua tau zoo tshaj li sib pauv yam tsis muaj ZRAM.

Nyob rau hauv xaus

Cia peb saib qhov tshwm sim dua:

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 hauv ZRAM yog yuav luag ib gigabyte ntawm uncompressed cov ntaub ntawv. Txhua yam mus rau ZRAM thiab tsis muaj dab tsi mus rau nplooj ntawv qeeb dua. Sim cov chaw no koj tus kheej, lawv ua haujlwm ntawm txhua tus qauv Raspberry Pi. Kuv siv tsis tau, khov kho tau hloov mus ua haujlwm thiab ruaj khov.

Nyob rau yav tom ntej, kuv vam tias yuav txuas ntxiv thiab hloov kho cov kab lus no nrog qee qhov txiaj ntsig los ntawm kev sim cov kab ke ua ntej thiab tom qab txhim kho ZRAM. Tam sim no kuv tsuas yog tsis muaj sijhawm rau qhov no. Lub sijhawm no, xav tias dawb khiav koj tus kheej cov kev xeem thiab qhia rau kuv paub hauv cov lus. Raspberry Pi 4 yog tsiaj nyaum nrog cov chaw no. Txaus siab rau!

Los ntawm cov ntsiab lus:

Tau qhov twg los: www.hab.com

Ntxiv ib saib