PDA

Просмотр полной версии : Ограничить Chrome/Chromium использование памяти


AdamK
13.07.2018, 14:01
Оба браузеры хороши, но проблема с пожиранием памяти. Добавление памяти проблему полностью не решит так как браузеры прибавят аппетит, такое же количество вкладок будет пожирать больше памяти.

Пробовал разные решения, но они не давали должный результат. В итоге решением для меня стало использование cgroup.

Проверено на Ubuntu 16.04 (64)

1) установим cgroup-bin

Код:



sudo apt-get install cgroup-bin


2) Перезагрузим. (cgroups находится тут /sys/fs/cgroup)

3) Make a cgroup for your user (the owner of the process)

# Измените $USER на пользователя системы, выполняющего ваш процесс.

# groupChromiumMemLimit это название группы, с таким названием создастся папка в /sys/fs/cgroup/memory

Код:



sudo cgcreate -a $USER:$USER -t $USER:$USER -g memory:groupChromiumMemLimit


4) Установление лимита оперативной памяти

Код:



sudo cgset -r memory.limit_in_bytes=$(($1024*1024*1024)) groupChromiumMemLimit


Так как это для меня было мало подредактировал:

3000000000 это 3 гб в байтах, устанавливаем нужное значение:

Код:



echo 3000000000 > /sys/fs/cgroup/memory/groupChromiumMemLimit/memory.limit_in_bytes


Запускаем браузер с настроенными параметрами группы:

Код:



cgexec -g memory:groupChromiumMemLimit chromium-browser


После перезагрузки сбивается. Нужно снова повторить пункт 3 и 4.

Решение получилось при совмещении нескольких инструкций найденных в сети 1 (https://href.li/?https://superuser.com/questions/952302/how-to-make-google-chrome-or-chromium-use-less-memory/1168435#1168435), 2 (https://href.li/?https://askubuntu.com/questions/94619/how-to-set-cpu-limit-for-given-process-permanently-cpulimit-and-nice-dont-work).

VFF
13.07.2018, 17:30
установи 32-х битный. 64-х битный будет всегда отжирать неподецки, такая архитектура. Это как с ведроидом - сколько бы оперативы не было, она всегда забита "недавно использованными".

AdamK
13.07.2018, 23:55
Да, вы правы 32х битная меньше жрет, но необходима именно 64х битная ОС. Да и использование 32х постепенно уходит в прошлое.

KyMRoot
31.07.2019, 17:04
Попробуйте стартовать приложение с использованием флага "--max_old_space_size" /Applications/Google\ Chrome.app --args --js-flags="--max_old_space_size=объем памяти в Мб"