1

Я использую 32-разрядную версию Ubuntu 10.04 на 4-ядерном компьютере AMD Phenom с 4 ГБ оперативной памяти. При обычном использовании (дюжина вкладок Chrome, 1 машина VirtualBox, 2 или 3 экземпляра QtCreator) память иногда заполняет> 95%, и машина перестает отвечать на запросы.

Если я смотрю на системный монитор в эти периоды, он показывает использование памяти на уровне 95% и более, но используются только несколько сотен МБ моего раздела подкачки объемом 9 ГБ! Почему больше памяти не перемещается в раздел подкачки, чтобы не закончиться?

Смотрите: http://imagebin.org/148884

2 ответа2

3

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

Linux также буферизует все файлы, которые вы читаете и записываете в памяти, в кэш LRU. Эти буферы могут быть быстро освобождены, если программы нужны памяти. Учитывая программы, которые вы запускаете, у вас может быть нехватка буферов, и ввод-вывод, который обычно выполняется из буферов, читается с диска.

Есть параметр swappiness, который вы можете настроить, но вы можете сначала изучить, что происходит. Попробуйте установить утилиту sar (пакет sysstat) и запустить ее в фоновом режиме. Затем вы можете просмотреть файлы, которые он генерирует, чтобы увидеть, какой ресурс становится узким местом.

1

Чтобы добавить к ответу Билла:

По возможности следует избегать своп из-за накладных расходов. Я полагаю, что более новые версии Ubuntu имеют значение по умолчанию 'swappiness', установленное на 10 (только начинайте использовать Swap, когда доступно <10% оперативной памяти). Я считаю, что это вполне соответствует тому, что вы видите.

Если по какой-то причине вы хотите начать использовать swap раньше (т. Е. Чтобы иметь достаточно свободного ОЗУ для запуска нового образа виртуальной машины), то вы можете рассмотреть возможность увеличения значения «swappiness». В следующем руководстве описывается, как это делается, и предоставляется дополнительная информация (см. Раздел «Почему мой своп не используется?»).«).

https://help.ubuntu.com/community/SwapFaq

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .