Swappiness:
cat /proc/sys/vm/swappiness
1
Свободный:
root@server07:~# free
total used free shared buff/cache available
Mem: 16256132 4155932 553748 145196 11546452 10514464
Swap: 19721212 8327508 11393704
Весь поршень используется кэшем?
ПОЧЕМУ? Как я могу выпустить кэш от поршня и переместить поршень подкачки к реальному поршню?
запустите этот скрипт однажды в день:
#!/bin/sh
sync
echo 1 >/proc/sys/vm/drop_caches
sync
echo 2 >/proc/sys/vm/drop_caches
sync
echo 3 >/proc/sys/vm/drop_caches
mem=$(LC_ALL=C free | awk '/Mem:/ {print $4}')
swap=$(LC_ALL=C free | awk '/Swap:/ {print $3}')
echo $mem
echo $swap
if [ $mem -lt $swap ]; then
echo "ERROR: not enough RAM" >&2
exit 1
fi
swapoff -a &&
swapon -a
Однако Выполнение эта команда к повороту подкачки и снова включают его, по существу очищая подкачку.
sudo swapoff -a && sudo swapon -a
можно записать сценарий, чтобы сделать, это периодически путем выполнения
sudo nano /usr/local/sbin/swap2ram.sh
#!/bin/sh
mem=$(LC_ALL=C free | awk '/Mem:/ {print $4}')
swap=$(LC_ALL=C free | awk '/Swap:/ {print $3}')
if [ $mem -lt $swap ]; then
echo "ERROR: not enough RAM to write swap back, nothing done" >&2
exit 1
fi
swapoff -a &&
swapon -a
sudo chmod +x /usr/local/sbin/swap2ram.sh
На данном этапе, можно работать, команда ниже для дампа подкачки назад к памяти (если достаточно доступной памяти)
sudo /usr/local/sbin/swap2ram.sh
sudo crontab -e
@hourly /usr/local/sbin/swap2ram.sh
grep CRON /var/log/syslog
, Уменьшающее swappiness, не является очень хорошим решением для настольного компьютера, хотя много сайтов предложат, чтобы Вы сделали эту 1-ю вещь, после установки.
я предложил бы восстановить swappiness к значению по умолчанию 60 и включить Zswap. Это сожмет и сохранит Ваши старые страницы в памяти, вместо того, чтобы непосредственно сохранить в подкачке. Вы видите этот пошаговое руководство .
мне включили его, и это - мое потребление мадам (со студией андроида, эмулятором андроида, хромом, выполнением атома)