linux использование памяти

25 January 2009 #memory#tips

По умолчанию в linux используются довольно консервативные параметры использования памяти. Swap начинает использоваться при заполнении памяти до уровня 40%. Файловый кеш рассчитан на использование примерно 75% уровня свободной памяти.

Значения данных уровней можно легко регулировать. Для этого используется виртуальная файловая система /proc Для уменьшения уровня использования свопа даем команду:

# echo 10 > /proc/sys/vm/swappines

Как понятно – команда дается от имени рута. Для изменения уровня файлового кеша:

# echo 1000 > /proc/sys/vm/vfs_cache_pressure

При этом обращаю внимание на то, что значение 1000 – это не проценты, и значение может менять в очень больших пределах. Описание встречал в рассылке ядра линукс.

Значение по умолчанию – 100. Если используется нетбук, у которого вместо жесткого диска используется ssd-диск, лучше установить это значение в 50. Тогда файловый кеш будет использоваться по максимуму, снижая обращение к жесткому диску.

Если же вы часто запускаете торрент-клиенты, то лучше это значение установить 1000 и более (следующие значения увеличиваются в 10 раз, то есть 10000, 100000 и т.д.), при этом не будет возникать ситуации, когда после нескольких часов работы торрент-клиента при попытке переключиться на другой рабочий стол приходиться ждать, пока вся инфа перечитается… Теперь она будет оставаться в памяти и не будет замещаться данными с торрент-клиента…

Чтобы данные значения автоматически устанавливались при загрузке системы необходимо добавить две строки в файл /etc/sysctl.conf:

vm.swappiness=1
vm.vfs_cache_pressure = 1000

Собственно все…