Chromium\Firefox едят весь процессор

Время от времени и Chromium и Firefox занимают 100% процессора и что-то пишут на диск, система тормозит ужасно из за этого. Помогает только убийство процесса.
Оба браузера установлены через pacman, последние версии.
Были мысли что с флеш плагином что то не так, но и без него тоже самое.
Пару дней такое уже, до этого все нормально работало.

Arch 2.6.35
мб свопит компутер? хром и лиса переодически сохраняют свое состояние на диске (помимо того что память кушают сами по себе).

vmstat -a 1 во время тормозов посмотри

—swap–
si so - если эти параметры изменяются активно, значит свопит
вообще при 2 гигах рекоменде отключить своп вообще, мне оч облгечило жизнь
Наблюдал такую картину:
1.2ГБ памяти, своп выключен. Запущены Хромиум и Опера, вкладок было открыто много.
Система, видимо, исчерпала память, и тут что-то началось. Вместо того, чтобы прибить процесс, начала моргать винтом и повисла. В консоль я переключиться смог, а вот залогиниться под рутом — нет. Логин выкидывало по 60-секундному таймауту на фазе ввода пароля, настолько всё тормозило. Так что информации, о том, что происходило, собрать не удалось. Прождал 10 минут, потом пришлось перезагрузить компьютер.

12309 это быть не может, поскольку в это время ничего не копировалось, не скачивалось, не обновлялось и т.п. В интенсивный своп система тоже уйти не могла из-за его отсутствия.

Наступил на такие грабли дважды, после чего подключил своп на всякий случай. Посмотрим, как с ним будет работать.
Свап вообще рекомендуется отключать при наличинии 3+ ГБ рамки…
Проблема похоже сама собой рассосалась. Оба браузера нормально стали работать, с чем связано не понятно, ничего вроде не изменилось. А оперативки у меня 1Гб, своп есть, но в него судя по “vmstat -a 1” ничего не пишется.

Похоже процесс kswapd0 всему причиной. Жрет периодически весь процессор и что то настойчиво пишет на жесткий диск.
не что-то, а кешированные страницы (те что ранее были прочитанны)

предположим вся память занята - всякими нужностями и кешированными страницами.
настала нужда в выделении памяти.
вместо того чтобы тупо дропнуть кешированные странцы при возникновении необходимости выделить память, эти кешированные страницы бережно пишутся в своп ) тратя время процессора и иопсы винта.
примерно так.
потому отключение свопа дает замечательный эффект.
но нужно следить за использованием памяти. свопится будет некуда, ежели чего.
Ненужность свопа в Linux — боянистый миф. Покурите: http://catap.ru/blog/2009/05/03/about-m … om-killer/ http://catap.ru/blog/2009/05/05/about-m … it-memory/
Clr
Ненужность свопа в Linux — боянистый миф. Покурите: http://catap.ru/blog/2009/05/03/about-m … om-killer/ http://catap.ru/blog/2009/05/05/about-m … it-memory/
да, да. статьи для понимания как работает оверкомит и oom-killer оч пользительные. курил еще год назад, когда запускал кучу виртуалок на нетбуке - отключение свопа дало увеличение скорости включения виртуалок на секунд 40 (3 виртуалки стартовали за 3 минуты, после отключения свопа за 2 минуты 19 секунд) понятно, что при свопе я мог бы еще запустить четвертую, выгрузив часть памяти трех других, но задачи были другие.

отключение свопа просто дает профит при работе на десктопе. но только в том случае если память практически вся использована.
и то действовать с осторожностью надо, чтобы не вывалится за пределы рамы. я на работе периодически впадаю с винтодергание )
Clr
Ненужность свопа в Linux
s/Ненужность свопа в Linux/Ненужность свопа в Linux на десктопе/
zubastiy
Clr
Ненужность свопа в Linux — боянистый миф. Покурите: http://catap.ru/blog/2009/05/03/about-m … om-killer/ http://catap.ru/blog/2009/05/05/about-m … it-memory/
да, да. статьи для понимания как работает оверкомит и oom-killer оч пользительные. курил еще год назад, когда запускал кучу виртуалок на нетбуке - отключение свопа дало увеличение скорости включения виртуалок на секунд 40 (3 виртуалки стартовали за 3 минуты, после отключения свопа за 2 минуты 19 секунд) понятно, что при свопе я мог бы еще запустить четвертую, выгрузив часть памяти трех других, но задачи были другие.

отключение свопа просто дает профит при работе на десктопе. но только в том случае если память практически вся использована.
и то действовать с осторожностью надо, чтобы не вывалится за пределы рамы. я на работе периодически впадаю с винтодергание )
Дано:
1. overcommit_memory = 0, свопа нет.
Если система не сильно нагружена процессами, и в ней заканчивается память, приходит oomk и карает кого попало. Обычно кем попало оказывается приложение, с которым вы только что работали.
Если программы на пределе умещаются в память и интенсивно с ней работают, система в определённый момент времени уходит в глубокий фриз, бесконечно удаляя и подкачивая заново чистые страницы, отображенных в память файлов. (Во всяком случае, это наиболее логично объяснение наступлению фриза, которое я вижу.) Единственный выход: Ctrl+Alt+F1, Ctrl+Alt+Del.
Если система сильно нагружена, и в ней заканчивается память, oomk не успевает покарать кого попало, и ядро намертво виснет. При запуске определённых задач, на моём компьютере зависание воспроизводится в 10-ти случаях из 10-ти. Еще можно словить kernel panic, такое я тоже видел.

2. overcommit_memory = 0, своп есть.
Если своп маленький, то будет всё то же самое, что в п.1, только чуть позже, после исчерпания свопа.
Если своп большой, то всё выглядит отлично, пока вы в один прекрасный момент не запустите очень_большой_процесс.

3. overcommit_memory = 2, свопа нет.
Нет фризов, нет внезапных убийств процессов, нет мертвых зависаний. Процессы сами решают, что делать, когда malloc вернул NULL. Даже если вся память занята непривилегированными процессами, всегда есть возможность залогиниться рутом и сделать что-нибудь осмысленное, поскольку для рута резервируется часть памяти. Система всегда остаётся в рабочем состоянии. Даже если из-под рута запустить в бесконечном цикле malloc, ничего не зависнет: Ctrl-C, и всё снова работает.

4. overcommit_memory = 2, своп есть.
Очевидный минус предыдущего подхода: память таки очень быстро заканчивается. Поэтому включаем своп, и наслаждаемся всем тем же самым, но уже с гораздо большим профитом.

PoZiTPoH
Clr
Ненужность свопа в Linux
s/Ненужность свопа в Linux/Ненужность свопа в Linux на десктопе/
Систему с 1.2ГБ рамы и без свопа может поставить на колени всего лишь запуск двух браузеров.
 
Зарегистрироваться или войдите чтобы оставить сообщение.