Каким-то образом у меня получилось поменять 14 ГБ памяти. После того, как я убил преступника, у меня снова есть тонны свободной памяти, поэтому я подумал, что смогу снова внести важные данные . Итак, из 5 ГБ из 32 ГБ использованных и 14 ГБ пространства подкачки я запустился swapoff -a
.... и через 4 часа примерно половина работы была завершена.
Это означает менее 1 МБ / с, в то время как я могу легко скопировать 200 МБ / с. Мой своп зашифрован, но все обычные разделы тоже, и с помощью aes-ni это не приводит к заметной загрузке процессора (а заполнение пространства подкачки заняло всего несколько минут) Я вижу, что нет особой причины для оптимизации swapoff
, однако мне интересно, как это могло быть так медленно?
Просто добавьте еще немного данных: моя основная память составляет 32 ГБ, и у меня есть 32 ГБ подкачки на каждом из 4 жестких дисков (конечно, излишнее количество, но кого это волнует?). Все пространство подкачки может быть прочитано (расшифровано и) менее чем за 5 минут:
time -p sudo sh -c 'for i in /dev/mapper/cryptswap?; do md5sum $i & done; wait'
014a2b7ef300e11094134785e1d882af /dev/mapper/cryptswap1
a6d8ef09203c1d8d459109ff93b6627c /dev/mapper/cryptswap4
05aff81f8d276ddf07cf26619726a405 /dev/mapper/cryptswap3
e7f606449327b9a016e88d46049c0c9a /dev/mapper/cryptswap2
real 264.27
Чтение части раздела не может быть медленнее, чем чтение всего этого. Тем не менее, чтение примерно 1/10 занимает около 100 раз дольше.
Я заметил, что во время swapoff
обоих процессоров в основном простаивали (возможно, 10% от одного ядра), как и диски («измеряемые» светодиодами). Я также видел, что места подкачки были выключены один за другим.
iostat -d 5
Показывал ли низкий IO на дисках во время swapoff
тоже?