Когда я использую настройки по умолчанию:
vm.overcommit_memory = 0
vm.overcommit_ratio = 50
Я могу прочитать эти значения из /proc/meminfo
файла:
CommitLimit: 2609604 kB
Committed_AS: 1579976 kB
Но когда я переключаюсь vm.overcommit_memory
с 0
на 2
, я не могу запустить тот же набор приложений, который мог запустить до изменения, особенно amarok. Мне пришлось изменить , vm.overcommit_ratio
чтобы 300
, таким образом , предел может быть увеличен. Теперь, когда я запускаю amarok, /proc/meminfo
показывает следующее:
CommitLimit: 5171884 kB
Committed_AS: 3929668 kB
Эта машина имеет только 1 ГБ ОЗУ, но amarok работает без проблем, когда vm.overcommit_memory
установлено значение 0. Но в случае его установки 2
amarok необходимо выделить более 2 ГБ памяти. Это нормальное поведение? Если да, то может ли кто-нибудь объяснить, почему, например, firefox (который потребляет в 4-6 раз больше памяти, чем amarok) работает одинаково до и после изменений?
Committed_AS
быть одинаковым в обоих случаях?