ááœááºáá²á·áá²á· áááºááá¹áááẠááŸá
áºáááºáá±á¬ááºá áá±ážáááºáá²á·áááºá
Raspberry Pi ááᯠá¡ááºá
áá±á¬áá¯ááºááŒá®ážááẠááá·áºááŸá¬
Raspberry Pi ááœáẠZRAM ááᯠá¡áááºááœááºážáá±áááºá
Raspberry Pi 4 ááœáẠ1á 2á 4 ááá¯á·ááá¯áẠ8 GB RAM áá«ááŸááááºá áá»áœááºá¯ááºááẠ1GB áá±á¬áºáááºááᯠá¡áá¯á¶ážááŒá¯áá±áááºááŒá
áºáá±á¬ááŒá±á¬áá·áº ááá·áºáá±á¬áºáááºá¡áá±á«áºá¡ááŒá±áá¶á ááœáŸááºááŒá¬ážáá»ááºáá»á¬ážááᯠáá»áááºááŸááá«á 1 GB ZRAM ááŒáá·áºá áá°áááºáž swap ááá¯áẠ(ááŸá±ážááœá±ážáááº!) ááᯠáááŒá¬áá áá»áŸá±á¬á·áá¯á¶ážáá«áááºá áá»áœááºáá±á¬áº áá®áá¬ááºááœáŸááºážááᯠáá¯á¶ážáááºá
á¡áááºáá±á¬áºááŒáá« áá»áááºáááºáá¬ážáá±á¬ ááá¯ááŸá±á¬ááºáá¯á¶ááœáẠááœáŸááºááŒá¬ážáá»ááºáá»á¬áž áá±ážáá¬ážáááºá áááºáááºááŒááºáž-
git clone https://github.com/foundObjects/zram-swap.git
cd zram-swap && sudo ./install.sh
config ááᯠáááºážááŒááºááá¯áá«á
vi /etc/default/zram-swap
ááá¯á·á¡ááŒááºá áááºááá·áºááœááºážááŒááºážááŒáá·áº ZRAM ááá¯ááœáá·áºááá¯ááºáááºá zram-tools
. áááºá€áááºážáááºážááá¯á¡áá¯á¶ážááŒá¯áá«á config ááá¯áá±áá»á¬áááºážááŒááºáá«á ááá¯ááºáá²ááŸá¬ /etc/default/zramswap
ááŸáá·áº 1 GB ZRAM ááá·áºááᯠááá·áºááœááºážáá«-
sudo apt install zram-tools
ááá·áºááœááºážááŒá®ážáá±á¬ááºá áááºááẠá¡á±á¬ááºáá« command ááŒáá·áº ZRAM ááá¯ááŸá±á¬ááºááŸá¯á á¬áááºážá¡ááºážáá»á¬ážááᯠááŒáá·áºááŸá¯ááá¯ááºáááº-
sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 265472 5
pi@raspberrypi:~ $
ZRAM ááᯠááá¯ááá¯áá±á¬ááºážááœááºá áœá¬á¡áá¯á¶ážááŒá¯áááºá¡ááœáẠkernel áá±á¬ááºáá»á¬ážááá¯ááá·áºááŒááºážá
ááᯠRaspberry Pi ááẠáá±á¬ááºáá¯á¶ážá¡ááá¯ááºá¡ááá·áºááœáẠáááŒá¬áá á¡á±ážáá²ááœá¬ážáááºááá·áº áá²ááŸááºááŸá¯ááá¯á· ááŒá±á¬ááºážááá·áºá¡áá« ááᯠá áá áºá á¡ááŒá¯á¡áá°ááᯠááŒá¯ááŒááºááŒáá«á áá¯á·á ááá¯ááºáá²ááᯠá á¬ááŒá±á¬ááºážá¡áááºážáááºááá·áºááŒáá·áºáá¡á±á¬áẠ/etc/sysctl.conf ááŸáá·áº reboot á
á€á á¬ááŒá±á¬ááºážáá»á¬áž á) áááœáŸá²áááŸá±á¬ááºáᬠááŸááºáá¬ááºáá¯ááºáááºážááŸá¯ááᯠááŸá±á¬áá·áºááŸá±ážá á±áááá·áºáááºákernel cache á¡áá±á«áº ááá¡á¬ážááᯠááá¯ážáá¬á á±ááŒá®áž 2) ááŸááºáá¬ááºáá¯ááºáááºážááŒááºážá¡ááœáẠá á±á¬á á±á¬áááẠááŒááºáááºááŒáááºáá áá²ááŸááºááŒááºážááᯠááŒáá¯áááºáá¯ááºáá±á¬ááºáá«á ááá¯á·áá±á¬áº ZRAM ááŸáááá·áº compressed memory ááá¯áá²ááŸááºáááºááá¯ááá¯áááá±á¬ááºáááá·áºáááºá
á€áááºááŸá¬ ááá¯ááºáá¡áá¯á¶ážááœáẠááá·áºáááá·áº á á¬ááŒá±á¬ááºážáá»á¬ážááŒá áºáááºá /etc/sysctl.conf:
vm.vfs_cache_pressure=500
vm.swappiness=100
vm.dirty_background_ratio=1
vm.dirty_ratio=50
ááá¯á·áá±á¬áẠáá»áœááºá¯ááºááá¯á·ááẠá áá áºááᯠááŒááºáááºá áááºááẠááá¯á·ááá¯áẠá¡á±á¬ááºáá« command ááŒáá·áº ááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááᯠá¡áááºááœááºážáá«á
sudo sysctl --system
vm.vfs_cache_pressure=500 cache directory ááŸáá·áº index objects áá»á¬ážá¡ááœáẠá¡áá¯á¶ážááŒá¯áá±á¬ memory ááᯠááŒááºáááºááá°ááẠkernel á ááá±á¬áá¬ážááᯠááá¯ážááŒáá·áºá á±ááá·áº cache pressure ááᯠááá¯ážá á±áááºá áááºááẠá¡áá»áááºááá¯ááŒá¬ááŒá¬ ááŸááºáá¬ááºáááºážáá±á¬ ááŸááºáá¬ááºááᯠá¡áá¯á¶ážááŒá¯áááá·áºáááºá á¡á á±á¬ááá¯ááºáž áá²ááŸááºááŒááºážááŒáá·áº á áœááºážáá±á¬ááºááẠáááááá¬áᬠáá»áááºážááœá¬ážáá«áááºá
vm.swappiness = 100 áá»áœááºá¯ááºááá¯á·ááẠZRAM ááᯠáŠážá áœá¬á¡áá¯á¶ážááŒá¯áá±áá±á¬ááŒá±á¬áá·áº kernel ááẠmemory á á¬áá»ááºááŸá¬áá»á¬ážááᯠáááºáá»áŸ ááŒááºážáááºá áœá¬ áá²ááŸááºáááºááá¯ááá·áº ááá·áºáááºáá»ááºááᯠááá¯ážá á±áááºá
vm.dirty_background_ratio=1&vm.dirty_ratio=50 - 1% ááá·áºáááºáá»ááºááá¯á·áá±á¬ááºáááºááŸáá·áº áá±á¬ááºáá¶áá¯ááºáááºážá ááºáá»á¬ážááᯠáá»ááºáá»ááºážá áááºááŸááºáááºážáááºáá«áááºá ááá¯á·áá±á¬áº 50% ááá áºáááº_á¡áá»áá¯ážáááŒáá·áºááá»ááºážá á áá áºááẠsynchronous I/O á¡á¬áž á¡áááºážá¡áá»ááºáá¯ááºáá±á¬ááºáááºááá¯ááºáá«á
á€á á¬ááŒá±á¬ááºážáá±ážááŒá±á¬ááºáž (ZRAM ááŸáá·áºá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«) ááá·áºááœááºá áœááºážáá±á¬ááºáááºááá¯ážáááºá á±áááºáá°áá®áá±ážáá«áááºá áááœáŸá²áááŸá±á¬ááºáᬠRAM áá¯ááºááœá¬ážáááºááŸáá·áº áá»áœááºá¯ááºáá²á·ááá¯á· áá²ááŸááºááẠáá°ážááŒá±á¬ááºážááŸá¯ á áááºáááºá á€á¡áá»ááºááá¯ááááŸáááŒá®áž ZRAM ááœáẠmemory compression ááá¯áá¯á¶ážááŒáááºááá·áºááœááºážá ááºážá á¬ážááŒááºážááŒáá·áºá ဠswap ááá¯ááŒáá¯áááºá áááºááŒááºážáááºááá¯ááá¯áá±á¬ááºážááœááºáááºá
áá»áœááºá¯ááºááá¯á·ááẠá¡áááá¡á¬ážááŒáá·áº kernel á¡á¬áž "áá±ážá áááºááŸáºá¡ááœáẠá¡áá¯á¶ážááŒá¯ááẠá¡ááá¯ááŸááºáá¬ááºáá áºáá¯áá»áŸ áá»áœááºá¯ááºááœááºáááŸááá«á ááá¯á·ááŒá±á¬áá·áº áááºážááᯠá¡ááŒááºáá¯á¶ážáááºááŸá¬ážááŒá®áž á¡áá¯á¶ážá¡áá»á¬ážáá¯á¶áž/á¡áá±ážááŒá®ážáá¯á¶ážáá»á¬ážááá¯áᬠááááºážáááºážáá¬ážáá±á¬ááŒá±á¬áá·áº áááºááŸáºááᯠááá¡á¬ážáá±ážááŒááºážá á¡áá±á¬ááºá¡áá°ááŒá áºá á±áá«áááºá áá±áá¬á"
caching áá»áŸá±á¬á·áá»ááŒááºážááŒáá·áºááẠá¡áá»áááºááŒá¬áá¬áááºááŸáá·áºá¡áá»áŸ ááá·áºááœááºážáá¬ážáá±á¬ memory á¡áá»á¬ážá á¯ááᯠááááºážááá¯ááºáá«áá kernel ááẠá¡ááœáá·áºá¡áááºážáá±á¬ááºáž áá²ááŸááºááŒááºážááᯠááá¯ááá¯á á±á¬á á®ážá áœá¬ á áááºááá¯ááºáááºááŒá áºááŒá®ážá ááá¯á·ááŸáᬠCPU (compression) ááŸáá·áº swap I/O ááá¯á·ááẠáá±á¬ááºáá¯á¶ážáááá áºá¡áá áá á±á¬áá·áºáá² á¡áááºážá¡ááŒá áºá¡á¬ážáá¯á¶ážááᯠáá áºááŒáááºáááºážá¡áá¯á¶ážááŒá¯ááá¯ááºáááºááŒá áºáááºá áá±á¬ááºáá»áá±ááŒá®á ZRAM ááẠcompression á¡ááœáẠCPU á¡áááºážáááºááá¯á¡áá¯á¶ážááŒá¯áá±á¬áºáááºáž memory ááá¬áá¡áááºážáááºááŸááá±á¬ á áá áºá¡áá»á¬ážá á¯ááœáẠZRAM ááá«áááºáá² swap ááẠá áœááºážáá±á¬ááºáááºáááºáá±á¬ááºááŸá¯ááá¯áááºážáá«áááºá
áááá¯á¶ážáá»á¯ááº
ááááºááᯠááŒááºááŒáá·áºáá¡á±á¬ááºá
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
ZRAM ááœáẠ264448 ááẠáá»á¯á¶á·ááá¬ážáá±á¬áá±áá¬á áá áºáá áºáá«ááá¯ááºáá®ážáá«ážááŒá áºáááºá á¡áá¬á¡á¬ážáá¯á¶áž ZRAM ááá¯á·ááœá¬ážáá²á·ááŒá®áž ááŸá±ážááœá±ážáá±á¬ á á¬áá»ááºááŸá¬ááá¯ááºááá¯á· áá¬ááŸáááŒá áºáá²á·áá«á á€áááºáááºáá»á¬ážááᯠááá¯ááºááá¯ááºá ááºážááŒáá·áºáá«á áááºážááá¯á·ááẠRaspberry Pi áá±á¬áºáááºáá»á¬ážá¡á¬ážáá¯á¶ážááœáẠá¡áá¯ááºáá¯ááºáá«áááºá áá»áœááºá¯ááºáá¡áá¯á¶ážááááºáá±á¬á á¡á±ážáá²áá±á¬á áá áºááẠá¡áá¯ááºáá¯ááºá áááºááŒáááºáá±á¬á áá áºáá áºáá¯á¡ááŒá áºááá¯á· ááŒá±á¬ááºážáá²ááœá¬ážáááºá
ááá±ážáá±á¬á·áá±á¬á¡áá¬áááºááœááºá ZRAM ááá¯ááááºáááºáá®ááŸáá·áºá¡ááŒá®ážááœááºá áá áºá¡á¬ážá ááºážáááºááŒááºážááŸááááºá¡áá»áá¯á·ááŸáá·áºá¡áá°á€áá±á¬ááºážáá«ážááá¯áááºáááºááŒá®ážááœááºážáá¶áááºáá»áŸá±á¬áºááá·áºáá«áááºá á¡áᯠáá®á¡ááœáẠáá«á·ááŸá¬ á¡áá»áááºáááŸááá±á¬á·áá°ážá á€á¡áá±á¬á¡ááœááºáž áááºáááá¯ááºááá¯ááºá ááºážáááºááŸá¯áá»á¬ážááᯠá¡ááá²á·áá¯ááºáá±á¬ááºááá¯ááºááŒá®áž ááŸááºáá»ááºáá»á¬ážááœáẠáá»áœááºá¯ááºá¡á¬áž á¡áááá±ážáá«á Raspberry Pi 4 ááẠá€áááºáááºáá»á¬ážáá«ááŸááá±á¬ áá¬ážáá²ááŒá áºáááºá áá»á±á¬áºááœáŸááºáá«á á±!
áá±á«ááºážá áẠby:
Linux á áœááºážáá±á¬ááºáááº- Swap Space ááᯠá¡ááŒá²áááºáž ááá¯ážááŒáŸáá·áºááá¯á· áá¬ááŒá±á¬áá·áº ááá¯á¡ááºáá¬áá²á (2017)Linux á áœááºážáá±á¬ááºáááº- áá²ááŸááºáá±áá¬ááœááºááᯠá¡ááŒá²áááºážáá®ážáá«áž ááá¯ážáá±ážáá«á á¡ááá¯ááºáž 2- ZRAM (2020)
source: www.habr.com