Как мне настроить возможность замены?

Мне нужен пошаговый, простой и понятный способ настройки swappiness.

Ядро Linux предоставляет настраиваемую настройку, которая управляет частотой использования файла подкачки, называемую swappiness.

Настройка взаимозаменяемости ноль означает, что диск будет удален без крайней необходимости (у вас заканчивается память), в то время как настройка подкачки 100 означает, что программы будут перенесены на диск почти мгновенно.

Система Ubuntu поставляется с значением по умолчанию 60, что означает, что файл подкачки будет использоваться довольно часто, если объем используемой памяти составляет около половины моей оперативной памяти. Вы можете проверить значение подкачки вашей собственной системы, выполнив:

one@onezero:~$ cat /proc/sys/vm/swappiness60

Поскольку у меня 4 ГБ оперативной памяти, я бы хотел уменьшить ее до 10 или 15. Файл подкачки будет использоваться только тогда, когда мое использование оперативной памяти будет примерно 80 или 90 процент. Чтобы изменить значение системной подкачки, откройте /etc/sysctl.conf как корень. Затем измените или добавьте эту строку в файл:

vm.swappiness = 10

Примените изменение.

sudo sysctl -p

Вы также можете изменить значение, пока ваша система все еще работает с:

sysctl vm.swappiness=10

Вы также можете очистить свой своп, выполнив swapoff -a и затем swapon -a как root вместо перезагрузки для достижения того же эффекта.

Чтобы рассчитать вашу формулу обмена:

free -m (total) / 100 = AA * 10root@onezero:/home/one# free -m             total       used       free     shared    buffers     cachedMem:          3950       2262       1687          0        407        952-/+ buffers/cache:        903       3047Swap:         1953          0       1953

таким образом, итого получается 3950/100 = 39,5 * 10 = 395

Итак, что это значит, так это то, что когда 10 % (395 МБ) оперативной памяти осталось, после чего он начнет использовать swap.


Помогите. Убунту . Менять

Что такое swappiness

Параметр swappiness управляет тенденцией ядра перемещать процессы из физической памяти на диск подкачки. Поскольку диски работают намного медленнее оперативной памяти, это может привести к замедлению времени отклика системы и приложений, если процессы слишком активно перемещаются из памяти.

  • swappiness может иметь значение от 0 до 100.
  • swappiness=0:
    • Версия ядра 3.5 и новее: отключает возможность замены.
    • Версия ядра старше 3.5: позволяет избежать подкачки процессов из физической памяти как можно дольше.
  • swappiness=1:
    • Ядро версии 3.5 и выше: минимальная возможность замены без полного отключения.
  • swappiness=100:
    • Сообщает ядру об агрессивной замене процессов из физической памяти и перемещении их в кэш подкачки.

Видеть http://en.wikipedia.org/wiki/Swappiness.

Значение по умолчанию в Ubuntu равно swappiness=60. Уменьшение значения swappiness по умолчанию, вероятно, улучшит общую производительность для типичной настольной установки Ubuntu. Значение, равное swappiness=10 рекомендуется, но не стесняйтесь экспериментировать.


Пример

Начал использовать swap в 91%:

enter image description hereПоскольку я настроил свою систему и виртуальную машину на использование оперативной памяти в 90%, в 90% никакого обмена не было.

После этого я открыл некоторые приложения, такие как Firefox и Shutter, и они начали меняться местами, потому что использование оперативной памяти выше 90%.

Для подкачки ZRAM без каких-либо фактических разделов / файлов подкачки используйте 100. Он предварительно сожмет все, что может быть предварительно сжато, оставив кэш нетронутым, и быстро распакует данные по мере необходимости (кроме того, без реальной подкачки вам нужно будет увеличить admin_reserve_kbytes x2 или даже x4, чтобы избежать зависания всей системы при низком объеме оперативной памяти вместо удаления голодного приложения).

Для твердотельного накопителя с фактическим разделом подкачки используйте 1. Это предотвратит замену как можно дольше, жертвуя кэшем (но кэш можно легко перечитывать с SSD).

Одна строка sudo bash -c "echo 'vm.swappiness = 15' >> /etc/sysctl.conf"

@redanimalwar вам также необходимо запустить sudo sysctl -p, чтобы загрузить новое значение swappiness из файла sysctl.conf, в противном случае изменение просто применяется при следующей перезагрузке.