Боролся несколько дней со свопом, который иногда страшно пожирал память что приводило к тормозам системы. Частое обращение памяти к жесткому диску на моем стареньком ноутбуке портило мне настроение. Вначале отключал своп, потом удалил, снова восстановил, в итоге был достигнут компромисс.
Компромисс обнаружился в настройке /proc/sys/vm/swappiness и /proc/sys/vm/vfs_cache_pressure.
В файле swappiness хранится значение в процентах, это уровень свободной памяти, при котором система начнет активно сбрасывать память в своп. Значение по умолчанию: 60. Я сделал 10.
В файле vfs_cache_pressure хранится значение - уровень выделяемой памяти под кэш. Значение по умолчанию: 100. Я сделал 1000.
Если жалко не задействованной оперативки во время работы системы, для ее ускорения изменяем значение системы на:
swappiness = 10 , vfs_cache_pressure = 1000
Для этого окрываем в Gedit для редакирования файл swappiness введя в терминал sudo gedit /proc/sys/vm/swappiness изменяем значение 60 на 10. Далее изменяем также файл vfs_cache_pressure введя в терминал sudo gedit /proc/sys/vm/vfs_cache_pressure и изменяем значение с 100 на 1000.
Далее, чтобы эти настройки применялись при загрузке системы отредактируем файл /etc/sysctl.conf. Вводим в терминале sudo gedit /etc/sysctl.conf и редактируем файл добавив в конец строки:
vm.swappiness = 10
vm.vfs_cache_pressure = 1000
После проделанных изменений в своп не будет выгружаться память пока оперативная память не загрузится на 90%. Т.е. оперативная память (которая работает быстрее чем своп на жестком диске) будет эффективно использована и не будет частых обращений к жесткому диску.
Пациент: ноутбук с 1 гиг. оперативкой; 2 гиг. своп раздел; Ubuntu 10.04.1
Компромисс обнаружился в настройке /proc/sys/vm/swappiness и /proc/sys/vm/vfs_cache_pressure.
В файле swappiness хранится значение в процентах, это уровень свободной памяти, при котором система начнет активно сбрасывать память в своп. Значение по умолчанию: 60. Я сделал 10.
В файле vfs_cache_pressure хранится значение - уровень выделяемой памяти под кэш. Значение по умолчанию: 100. Я сделал 1000.
Если жалко не задействованной оперативки во время работы системы, для ее ускорения изменяем значение системы на:
swappiness = 10 , vfs_cache_pressure = 1000
Для этого окрываем в Gedit для редакирования файл swappiness введя в терминал sudo gedit /proc/sys/vm/swappiness изменяем значение 60 на 10. Далее изменяем также файл vfs_cache_pressure введя в терминал sudo gedit /proc/sys/vm/vfs_cache_pressure и изменяем значение с 100 на 1000.
Далее, чтобы эти настройки применялись при загрузке системы отредактируем файл /etc/sysctl.conf. Вводим в терминале sudo gedit /etc/sysctl.conf и редактируем файл добавив в конец строки:
vm.swappiness = 10
vm.vfs_cache_pressure = 1000
После проделанных изменений в своп не будет выгружаться память пока оперативная память не загрузится на 90%. Т.е. оперативная память (которая работает быстрее чем своп на жестком диске) будет эффективно использована и не будет частых обращений к жесткому диску.
Пациент: ноутбук с 1 гиг. оперативкой; 2 гиг. своп раздел; Ubuntu 10.04.1