Пре пар недеља сам објавио
Након што инсталирате Распберри Пи у свој
Активирање ЗРАМ-а на Распберри Пи
Распберри Пи 4 долази са 1, 2, 4 или 8 ГБ РАМ-а. Користићу модел од 1 ГБ, па вас молимо да прилагодите упутства на основу вашег модела. Са 1 ГБ ЗРАМ-а, подразумевана свап датотека (споро!) ће се ређе користити. Користио сам ову скрипту
Инструкције су дате у спремишту повезаном изнад. Инсталација:
git clone https://github.com/foundObjects/zram-swap.git
cd zram-swap && sudo ./install.sh
Ако желите да измените конфигурацију:
vi /etc/default/zram-swap
Поред тога, можете активирати ЗРАМ инсталирањем zram-tools
. Ако користите овај метод, обавезно уредите конфигурацију у фајлу /etc/default/zramswap
, и инсталирајте око 1 ГБ ЗРАМ-а:
sudo apt install zram-tools
Након инсталације, можете погледати статистику ЗРАМ меморије помоћу следеће команде:
sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 265472 5
pi@raspberrypi:~ $
Додавање параметара кернела за боље коришћење ЗРАМ-а
Сада поправимо понашање система када Распберри Пи пређе на замену у последњем тренутку, што често доводи до замрзавања. Хајде да додамо неколико редова у датотеку /етц/сисцтл.цонф и поново покрените.
Ови редови 1) одложиће неизбежно исцрпљивање памћења, повећавајући притисак на кеш језгра и 2) раније почињу да се припремају за исцрпљивање памћења, иницирајући замену унапред. Али биће много ефикасније заменити компримовану меморију преко ЗРАМ-а!
Ево редова које треба додати на крају датотеке /етц/сисцтл.цонф:
vm.vfs_cache_pressure=500
vm.swappiness=100
vm.dirty_background_ratio=1
vm.dirty_ratio=50
Затим поново покрећемо систем или активирамо промене следећом командом:
sudo sysctl --system
вм.вфс_цацхе_прессуре=500 повећава притисак кеша, што повећава склоност кернела да поврати меморију која се користи за кеширање објеката директорија и индекса. Користићете мање меморије током дужег временског периода. Оштар пад перформанси се негира ранијим заменама.
вм.сваппинесс = 100 повећава параметар колико ће језгро агресивно мењати меморијске странице, пошто прво користимо ЗРАМ.
вм.дирти_бацкгроунд_ратио=1 & вм.дирти_ратио=50 - позадински процеси ће почети да се снимају одмах након достизања границе од 1%, али систем неће форсирати синхрони И/О док не достигне дирти_ратио од 50%.
Ове четири линије (када се користе са ЗРАМ-ом) ће вам помоћи да побољшате перформансе ако јесте неизбежно Понестаје РАМ меморије и почиње прелазак на свап, као мој. Знајући ову чињеницу, а такође и узимајући у обзир компресију меморије у ЗРАМ-у за три пута, боље је започети ову замену унапред.
Притисак на кеш меморију помаже јер ми у суштини говоримо кернелу: „Хеј, види, немам никакву додатну меморију да користим за кеш, па вас молим да је се решите што пре и чувајте само најчешће коришћене/важне подаци."
Чак и са смањеним кеширањем, ако је током времена већина инсталиране меморије заузета, кернел ће почети опортунистичку замену много раније, тако да ЦПУ (компресија) и свап И/О неће чекати до последњег минута и користити све ресурсе одједном када прекасно је. ЗРАМ користи мало ЦПУ-а за компресију, али на већини система са малим количинама меморије има много мањи утицај на перформансе него замена без ЗРАМ-а.
У закључку
Погледајмо поново резултат:
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 у ЗРАМ-у је скоро један гигабајт некомпримованих података. Све је отишло у ЗРАМ, а ништа у много спорији фајл страница. Испробајте ова подешавања сами, функционишу на свим Распберри Пи моделима. Мој неупотребљиви систем за замрзавање се претворио у функционалан и стабилан.
У блиској будућности, надам се да ћу наставити и ажурирати овај чланак неким резултатима тестирања система пре и после инсталирања ЗРАМ-а. Сад једноставно немам времена за ово. У међувремену, слободно покрените своје тестове и јавите ми у коментарима. Распберри Пи 4 је звер са овим подешавањима. Уживати!
На тему:
Извор: ввв.хабр.цом