Рейтинг:1

Linux использует своп, когда доступна оперативная память

флаг au
s5s

У меня возникла проблема, из-за которой Linux, похоже, использует своп вместо оперативной памяти. Мне кажется, что я вызвал ошибку, потому что:

  1. Своп, кажется, используется для хранения данных, которые регулярно используются, практически не используется.
  2. Весь ПК кажется очень медленным, чтобы реагировать на любые команда (например, открытие меню «Пуск», переключение окон, запуск новый терминал и т.д.)
  3. использование памяти подкачки составляет 100%, когда у меня осталось 28 ГБ (двадцать восемь) ОЗУ (используется 4 ГБ)
  4. Своп используется для приложений, которые я только что запустил (например, chrome, R-studio), потому что он поднимается, когда я запускаю эти приложения, и освобождается, когда я их закрываю.

Есть ли способ сила linux прекратить использовать своп для нового выделения памяти? Я установил swappiness на 0.

РЕДАКТИРОВАТЬ: Прежде чем я задал вопрос, я изменил swappiness через sudo sysctl vm.swappiness=0 и я сделал изменение постоянным в /etc/sysctl.conf. Это не имело значения.Я не перезагружал свой компьютер, потому что у меня есть работа, но время работы составляет всего 3 дня.

$ кошка /proc/sys/vm/swappiness
0
$ время безотказной работы
09:08:54 вверх 3 дня, 6 мин, 1 пользователь, средняя загрузка: 1,90, 2,23, 2,45
$ uname -a
5.4.0-72-generic #80~18.04.1-Ubuntu SMP пн 12 апр 23:26:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
$ бесплатно -м
              общее количество использованных бесплатных общих баффов/доступных кешей
Память: 32022 1891 229 610 29901 29069
Обмен: 2047 988 1059

EDIT2: я запускаю сценарий SQL для базы данных postgresql. Сценарий очень длинный, но состоит всего из нескольких \копировать(выбрать...) операторы, которые выгружают данные в csvs. Я бы предположил, что не psql забивает своп, а ядро ​​​​решает, какую память использовать?

Someone avatar
флаг my
Вы изменили swappiness навсегда? Примечание: он сбрасывается каждый раз при перезагрузке.
флаг in
Не могли бы вы [отредактировать] свой вопрос, включив вывод терминала `cat /proc/sys/vm/swappiness`?
флаг au
s5s
@matigo Добавил содержимое.
флаг in
«Использовано 4 ГБ» вы используете 64-битное ядро ​​​​и / или ядро ​​​​HWE?
флаг au
s5s
@PvdL 64-битное стандартное ядро ​​​​Linux - см. обновленный вопрос.
FedKad avatar
флаг cn
Можете ли вы добавить к своему вопросу вывод `free -mt`?
флаг au
s5s
@FedKad Добавлен `free -m`, но это после того, как я выполнил `sudo swapoff -a && sudo swapon -a`. Используемый до этого своп составлял 1,8 ГБ (из доступных 2 ГБ).
Raffa avatar
флаг jp
Связанный: https://askubuntu.com/q/1347219/968501
Рейтинг:1
флаг cn

После того, как вы установите swappiness на ноль, вы можете попробовать:

sudo swapoff -a && sudo swapon -a 

перенести область подкачки в память без перезагрузки компьютера.

флаг au
s5s
Я думаю, что это, кажется, сделало что-то, что помогло. Немного обновлю.
флаг au
s5s
`sudo swapoff -a` сделал это - сделал своп недоступным, поэтому все, что его использовало, перестало его использовать.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.