Почему linux swap такой медленный?

Почему linux swap такой медленный?

Я разработчик программного обеспечения, и время от времени я случайно использую всю доступную оперативную память одной из моих программ. Операционная система услужливо выгружает все остальное, что я могу использовать в это время (например, веб-браузер, IDE для разработки, аудиоплеер и т. д.). После того, как мне удается завершить мою неисправную программу, другое программное обеспечение, работающее на моей машине, почти не может использоваться в течение нескольких минут, и оно не выгружается обратно самостоятельно, если я фактически не использую программное обеспечение (и не жду долгие секунды после каждого щелчка). Я могу просто sudo swapoff -aпринудительно вернуть все страницы памяти в оперативную память, но это занимает на удивление много времени. Я могу контролировать использование подкачки с помощью freeкоманды. Подкачка опустошается примерно со скоростью 1-2 МБ/с — запуск freeкаждые пару секунд показывает разницу всего в одну цифру, и весь процесс может занять пару минут.

Моя система довольно новая, и я только что протестировал HDD, на котором хранится раздел подкачки cpipe- чтение файла размером 7 ГБ в среднем составляет около 150-160 МБ/сек. Почему подкачка не перемещается обратно в оперативную память с такой же скоростью?

Можно ли что-то сделать, чтобы ускорить процесс?

$ uname -r
4.15.0-29-generic

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.5 LTS
Release:        16.04
Codename:       xenial

Связанный контент