Один из разработчиков Mozilla опубликовал (http://blog.mozilla.com/nnethercote/2012/01/17/notes-on-redu.../) интересный доклад (PDF (https://wiki.mozilla.org/images/9/93/LCA2012.pdf), 13 Мб), в котором изложена история борьбы с утечками памяти в Firefox и подробности внесённых за последний год оптимизаций, направленных на снижение потребления памяти в Firefox. В докладе разобраны некоторые типовые ошибки и представлен обзор проблем, возникающих при использовании тех или иных стратегий выделения памяти.
В последнее время в рамках проекта MemShrink (http://www.opennet.me/opennews/art.shtml?num=30879) была проделана большая работа по сокращению роста потребления памяти при интенсивном использовании браузера. Например, в версии Firefox 7 (http://www.opennet.me/opennews/art.shtml?num=31865) потребление памяти было сокращено на 20-30%, добавленные в Firefox 8 наработки позволили уменьшить расход памяти ещё приблизительно на 14%, а в Firefox 9 (http://www.ope...URL: http://blog.mozilla.com/nnethercote/2012/01/17/notes-on-redu.../
Новость: http://www.opennet.me/opennews/art.shtml?num=32845
13 мб отчёт.
целая книга что ли? домой приду - скачаю.
Пока он отчитывался о борьбе, оно опять потекло.
> Пока он отчитывался о борьбе, оно опять потекло.Если вместо того, чтобы бороться с утечками, писать отчеты об этой борьбе - утечки никуда не денутся.
> Если вместо того, чтобы бороться с утечками, писать отчеты об этой борьбе
> - утечки никуда не денутся.А нету никаких утечек. В лисе самой по себе.
Есть:
1) Глючные аддоны. Вопросы - авторам.
2) Сайты с глючными скриптами, так хитро работающие что жрут все больше памяти. Вопросы авторам таких сайтов. А если не понимают - покажите им #$%^W noscript. Потребление памяти и нагрузка на проц снижаются просто феерически. Вы только приколитесь, если я захочу выделять себе в JS массивчики по 10 метров штучка - никто особо и не запретит. А когда я их там перестану юзать - мое дело, приколитесь. А то что оно будет висеть и жрать у вас памяти - ничего не знаю, не мои проблемы :)
> А нету никаких утечек. В лисе самой по себе. Сайты с глючными скриптами, так хитро работающие что жрут все больше памяти. Вопросы авторам таких сайтов.Ага, точно. Если я прогой из-под непривилегированной (гостевой) учетки могу обрушить всю ось - вопросы к авторам этой проги, разработчики оси, конечно же, не виноваты :D
> Ага, точно. Если я прогой из-под непривилегированной (гостевой) учетки могу обрушить всю
> ось - вопросы к авторам этой проги, разработчики оси, конечно же,
> не виноваты :DА в этом плане все браузеры какие-то слегка раздолбайские, если честно - походу можно ремотно жрать ресурсы оптом и ничего особо не будет за это. Попробовал для лулзов лепить не сильно гуманный array - мегов на 100-200. Создается, фигня вопрос. Более того, document.write(array) ведет себя довольно забавно.
- В хроме он просто жрет адово количество оперативы (удалось догнать процесс с вкладкой до гига, дальше было дениво) и грузит проц на 100%. И так минут пять. Зато интерфейс сильно тормозит. Отдавать эту память хром как-то не спешит. Разве что если процесс покилять руками.
- В лисе секунд на 20 начинает тупить интерфейс, жрач памяти растет, проц жрется. Секунд через 20 скрипт висящий в document.write убивается по какому-то security exception или как-то так. Видимо лис умнее и отрицательно относится к идее дописать аж 200 метров к текущему документу :)
Если память фаер начал есть больше, то по вашей логике закрытие всех вкладок память должна очистить. Но этого не происходит.
> по вашей логике закрытие всех вкладок память должна очистить.это по вашей логике.
вы знаете, как работает сборщик мусора? очевидно, нет.
>> по вашей логике закрытие всех вкладок память должна очистить.
> это по вашей логике.
> вы знаете, как работает сборщик мусора? очевидно, нет.Перечитайте ещё раз пост номер 86, на который я НЕ_ВАМ отвечал, и извинитесь передомною и окружающими за Вашу оплошность и резкость.
во-во, размер пдф-а в 37-мь страниц несколько комично смотрится, при прочтении заголовка...
Не борются с утечками - все кричат "ай-ай-ай, у меня потекло, плохая лиса..." (хотя лично я этого мнения не разделяю). Борются - вам отчеты не нравятся. Что ж они должны сделать, чтобы вы были довольны?
мнение можешь не разделять, но признать факт ведь должен. Ради прикола поставь расширение Memory Restart и понаблюдай, как увеличивается расход памяти... Жду когда этого не будет.
Открыл один и тот же набор вкладок в ff 11 и chrome 16
Итого: у хрома отожрано 457 МБ
У ff 264 МБ
По опыту могу сказать, что фф за 400 редко переваливает (всего в машинке 2 GB).
Внимание, вопрос. О каком факте идет речь?
> Внимание, вопрос. О каком факте идет речь?О get the facts от гугла... :\
> мнение можешь не разделять, но признать факт ведь должен.Ради прикола запустил лису на 2 месяца на машине без свопа. Были б там утечки - сдохло б нафиг и полсистемы за собой утащило бы.
Аналогично, рабочая машина крутится круглый год, перезагружаю только когда не ленюсь собрать новое ядро, само собой на ночь даже ff не вырубаю, что бы утром не запускать, если бы текло - было бы заметно уже через пару недель.
> Не борются с утечками - все кричат "ай-ай-ай, у меня потекло, плохая лиса..." (хотя лично я этого мнения не разделяю). Борются - вам отчеты не нравятся. Что ж они должны сделать, чтобы вы были довольны?Реально пофиксить утечки, а не писать сказки о Великой Борьбе.
> Реально пофиксить утечки, а не писать сказки о Великой Борьбе.А вам не приходило в бошку что это могут быть особенности используемых вами дополнений или откровенные баги в скриптах некоторых сайтов? В js нет никаких внятных лимитов сколько и кому чего можно. Я ради лулзов пытался выделять массив на уйму метров и потом писать его document.write'ом. Знаете что происходит? Браузер неслабо жрет память и проц. Но ни лису ни хрома это до некоторых довольно суровых пределов не смущает. В лисе в какой-то момент лис начинает считать что скрипт охрнел и вырубает его, видимо по лимиту на объем страницы. Хром умудрядся догнаться до гигаза на процесс, не меньше :)
Если ружье при выстреле разрывает - это патрон фуевый или ружье некачественное?
> Если ружье при выстреле разрывает - это патрон фуевый или ружье некачественное?Все, что угодно, хоть вмешательство инопланетян, но любимое ружье в обиду не дадим!
> Все, что угодно, хоть вмешательство инопланетян, но любимое ружье в обиду не дадим!Ну знаете, если надпил сделать и в воду засунуть, так то что разрывает - вообще фича. Так народ в старину обрезы из ружей делал, приколитесь?
> Если ружье при выстреле разрывает - это патрон фуевый или ружье некачественное?Если в патрон вместо пороха положить хорошую взрывчатку, то конечно же ружьё! А ещё его можно в доменную печь кинуть и удивляться, что оно расплавилось.
> Если ружье при выстреле разрывает - это патрон фуевый или ружье некачественное?Мало ли, вдруг вы в патрон полкило динамита засунули. Я вот например одной левой могу в хроме массив на 100 мег хряпнуть. И потом он как-то не больно то и отдает эту память. А если document.write сделать - он вообще 5 минут жрет проц под завязку и процесс разбухает до гига.
Как же меня задолбали гуманитарии с этими своими метафорами. Какое ружьё? Как оно связано с браузером? Ты можешь говорить по существу вопроса? Браузер - интерпретатор, страница - программа. Ты сравниваешь ружьё с интерпретатором, а патрон с программой? С каких пор разработчик интерпретатора несёт ответственность за разработчика программы?
> Как же меня задолбали гуманитарии с этими своими метафорами. Какое ружьё? Как
> оно связано с браузером? Ты можешь говорить по существу вопроса? Браузер
> - интерпретатор, страница - программа. Ты сравниваешь ружьё с интерпретатором, а
> патрон с программой? С каких пор разработчик интерпретатора несёт ответственность за
> разработчика программы?Нет, патрон - это палец, а ружьё - это ж***. Смысл сравнения был видимо такой: если неудачно поковыряться в ж***, то её можно разорвать. Автор просто писал в форум для проктологов, но ошибся форумом.
Там изображений много :-)
http://imageshack.us/photo/my-images/521/79603526.jpg/
> http://imageshack.us/photo/my-images/521/79603526.jpg/Тогда боюсь себе даже представить репутацию хрома...
Наблюдаю в FF 9.0.1 следующее: если открыть 100500 вкладок (или несколько огромных страниц вроде http://www.gnu.org/software/libc/manual/html_mono/libc.html ) то после закрытия вкладок фокс возвращает операционке лишь небольшую часть. Вещь не смертельная, но раздражающая так как фокс бывает днями висит и количество вкладок в нем очень сильно варъируется.
> Наблюдаю в FF 9.0.1 следующее: если открыть 100500 вкладок (или несколько огромных
> страниц вроде http://www.gnu.org/software/libc/manual/html_mono/libc.html ) то после
> закрытия вкладок фокс возвращает операционке лишь небольшую часть. Вещь не смертельная,
> но раздражающая так как фокс бывает днями висит и количество вкладок
> в нем очень сильно варъируется.Прикол в том, что Firefox вообще ничего возвращать в ОС не должен, это вам не Chrome, который память с завершением процесса освобождает. В Firefox уже отъеденная у ОС память никогда не вернётся обратно, если туда было что-то записано.
ты бы firefox запустил хоть раз, аналитег.
Отдает память еще и как, сотнями мегабайт.
> ты бы firefox запустил хоть раз, аналитег.
> Отдает память еще и как, сотнями мегабайт.Чтобы он отдал хотя бы сотню мегабайт, он должен сначала сожрать несколько гигов.
Это по реальному опыту использования.
> Это по реальному опыту использования.По реальному опыту, в последних версиях аллокатор куда бойче память возвращает. Но ты же видел лису свежих версий только на картинке, правда?
>Прикол в том, что Firefox вообще ничего возвращать в ОС не должен, это вам не Chrome, который память с завершением процесса освобождает. В Firefox уже отъеденная у ОС память никогда не вернётся обратно, если туда было что-то записано.Никто ничего не должен - я это понимаю. Однако, можно было бы переработать подсистему управления памятью бровзера и добавить гибкости. Только не надо мне говорить что это невозможно или приводить расточительную архитектуру хрома.
> Никто ничего не должен - я это понимаю. Однако, можно было бы переработать подсистему управления памятью бровзера и добавить гибкости.а ктонить вообще скажет мне -- зачем её нужно возвращять?
1. предположим у меня есть: 3G физической-RAM и 16G swap-памяти ..
2. предположим я открыл Firefox (и "туча" вкладок) и он отъел у меня 2G виртуальной-памяти
3. далее -- пусть я зыкрыл почти-все вкладки.. и предположим что Firefox НЕ освободил мне свои 2G виртуальной-памяти
4. далее -- предположим мне нужно открыть программу которая хочет отожрать тоже 2G памяти... и всплывает вопрос... ...какие тут могут быть вообще проблемы?
.....если в какойто программе существует использование виртуальной НЕиспользуемой памяти (в случае если это НЕ утечка, а просто неэффективное использование этой виртуальной памяти) -- то просто навсего эти неиспользуемые данные в конечном итоге окажутся внутри swap. и никому от этого плохо не станет (так как это данные есть -- не используемые -- то swap не будет постоянно в работе трещщать жостким диском).
а когда я снова захочу открыть в Firefox "тучу" вкладок -- то Firefox не будет отъедать ЕЩЁ дополнительные 2G вкладок, а начнёт использовать те 2G, которые были отъедены ранее... без дополнительной инициализации структур в памяти (что кстате былобы очень долго, возможно дольше чем восстановить цепочки блоков памяти из SWAP)
# p.s.: да, я согласен что "экономия памяти" -- это важная проблема которую нужно решать в Firefox... но это точно не та проблема которая заключается в "отдавании" (free) блоков памяти :-)
> Никто ничего не должен - я это понимаю. Однако, можно было бы переработать подсистему управления памятью бровзера и добавить гибкости.
>а ктонить вообще скажет мне -- зачем её нужно возвращять?Это же логично возвращать ресурсы которые не востребованы так как есть еще и другой софт в системе (тут вдруг вспомнились быдлоолигархи которые умирают миллиардерами - тогда как могли бы миллиард-другой потратить на ликвидацию шламовых озер).
логично только на первый взгляд.проблема в том что функции: "взять память у операционной системы" и "отдать память обратно операционной системе" -- работают не очень быстро.
если реализовать механизм который только берёт память у операционной системе (и никогда не возвращает ей, до закрытия всей программы) -- то программа будет работать несколько быстрее :).
приэтом сёравно в такой программе будет сввой собственный механизм (memory-manager) с функциями: "выделить память" и "отдать память"... но работать он будет на своём внутреннем уровне (тоесть "отдавая память" он будет "отдавать" её не операционной системе, а складывать блоки памяти прозапас :))..
не говоря уже о том что инициализированными можно оставлять -- целые готовые структуры объектов данных. для будущего повторного использования. (зачем второй раз их заново создавать? этоже время!)
> так как есть еще и другой софт в системе
а другим программам -- особо хуже от этого не будет -- так как виртуальная-память (не путать с физической-памятью) -- практически безграничная [в случае если нет утечек этой самой виртуальной-памяти в программах] :-)
Добро подаловать в Java мир, надеюсь теперь то вы все программы, если вы вообще хоть одну написали на ней пишите?
Вот за это джаву и не любят на десктопах в основном. В результате имеем своппинг на ровном месте, что отзывчивости ни разу не прибавляет. А учитывая, что libastral пока в операционной системе нет, никакой гарантии, что в своп будет сброшены именно неиспользуемые куски, а не что-то полезное, но к чему редко обращаются, нет. А вот если б память отдавалась - тормозов бы не было
Только эти пару гигов надо ещё просвопить на диск, что займёт время. И после этого она мешать небудет - если повезёт и 1) файрфокс туда зачем-то не полезет (допустим, обновить структуры memory manager) 2) операционная система не сочтет нужным это дело префетчить.По факту - в большинстве случаев такое поведение очень заметно и неприятно - в лучшем случае выражается как лишние тормоза при запуске софта, в худшем как замирания этого же софта, когда его вдруг свопят, чтобы мозилла у себя в куче покопалась.
> а ктонить вообще скажет мне -- зачем её нужно возвращять?
> 1. предположим у меня есть: 3G физической-RAM и 16G swap-памяти ..
> 2. предположим я открыл Firefox (и "туча" вкладок) и он отъел у
> меня 2G виртуальной-памяти
> 3. далее -- пусть я зыкрыл почти-все вкладки.. и предположим что Firefox
> НЕ освободил мне свои 2G виртуальной-памяти
> 4. далее -- предположим мне нужно открыть программу которая хочет отожрать тоже
> 2G памяти... и всплывает вопрос... ...какие тут могут быть вообще проблемы?.....если в какойто программе существует использование виртуальной НЕиспользуемой памяти
> (в случае если это НЕ утечка, а просто неэффективное использование этой
> виртуальной памяти) -- то просто навсего эти неиспользуемые данные в конечном
> итоге окажутся внутри swap. и никому от этого плохо не станет
> (так как это данные есть -- не используемые -- то swap
> не будет постоянно в работе трещщать жостким диском).
> а когда я снова захочу открыть в Firefox "тучу" вкладок -- то
> Firefox не будет отъедать ЕЩЁ дополнительные 2G вкладок, а начнёт использовать
> те 2G, которые были отъедены ранее... без дополнительной инициализации структур в
> памяти (что кстате былобы очень долго, возможно дольше чем восстановить цепочки
> блоков памяти из SWAP)что такое виртуальная память - вы знаете слабо. да и вообще, представление работы с памятью, довольно любопытное...
> Только не надо мне говорить что это невозможно или приводить расточительную архитектуру хрома.При организации общей кучи для всех объектов в Firefox отдавать память обратно ОС нереально.
> При организации общей кучи для всех объектов в Firefox отдавать память обратно
> ОС нереально.Почему-то ваша теория не мешает гарбаж коллектору в новых лисах довольно резво возвращать память системе.
у ФФ не общая куча. RTFM per domain compartment
> у ФФ не общая куча. RTFM per domain compartmentНу так вы это вон тому господину с его теориями расскажите :)
Там у него кешируется некоторое количество недавно закрытых вкладок, уменьшать их количество пробовали? browser.sessionhistory.max_entries, кажется. Быть может, меня поправят.
Да, кстати, как-то не сообразил залезть в about:config. Выставил параметр в 1, гляну поведет себя фокс в деле.
Нифига, browser.sessionhistory.max_entries отвечает за глубину истории навигации по табу (выставил в 1 и кнопка back неактивна).
Значит, я ошибся и это browser.sessionhistory.max_total_viewers
Кстати, вот вкладки ему бы уметь кешировать на диск в удобном для восстановления виде - с формами, изменившимся DOM и т.д. - в общем, не что из сети прилетело, а именно текущее состояние. И не "некоторое количество" - а всю сессию, чтобы при восстановлении вообще к сети не лезть без явной просьбы пользователя. И тогда получается фокус - можно все страницы, у которых не висят соединения к серверу, setTimeout и плагины при неактивности выкидывать на диск. А также - по отдельной просьбе пользователя - и те, у которых висят. Вот это потребление памяти точно в разы снизит. Особенно при установке flashblock/noscript.
И зачем это? Типа, дисковой активности маловато? Вон тут юзеры ssd и так долбуцца с переносом профиля в RAM чтобы диск меньше затирать, а вы предлагаете им еще веселее жизню сделать, да? :)
Ну раз всё равно долбутся - хуже не будет. А тем, у кого HDD (коих большинство, и коих большинство будет ещё долго) это очень выгодно. Дисковая активность здесь, если не совсем криворуко сделать, совершенно фоновая и на отзывчивость вообще никак не влияющая. Считай, это тот же своп - только в этом случае браузер точно знает, что именно надо выгрузить (то есть выгружеатся много меньше) и что к выгруженному лишний раз обращаться не надо. Так что в нормальном случае дисковой активности может стать даже меньше. Тем более, что браузер и так к совему кэшу обращается - а здесь ему это не потребуется.Ну и параметр, отключающий это дело, тоже никто не запрещает добавить.
> Ну раз всё равно долбутся - хуже не будет.Будет - профайл разбухнет (==больше RAM сожрет рамдиск под его хранение) или будет сильнее протирать ssd. Нафнафнафнафнаф.
> А тем, у кого HDD (коих большинство, и коих большинство будет ещё долго)
Во первых, рост ssd продолжится и глупо забивать болт на свое будущее. Во вторых, с текущими ценами на hdd у ssd просто зеленая улица какая-то.
> это очень выгодно. Дисковая активность здесь, если не совсем криворуко
> сделать, совершенно фоновая и на отзывчивость вообще никак не влияющая.Угу, только вон те овощи с их 12039 как обычно нам карму испортят :)
> Считай, это тот же своп
Я считаю что:
1) Своп _может_ испортить отзывчивость системы, потому что память намного быстрее диска в случае механического hdd.
2) Приложения не должны лезть в то что реализует операционка.
3) Усложнение программ еще никого до добра не доводило.
4) Идеальная программа - занимает 0 байтов и ничего не делает. Поэтому она не создает нагрузку на компоненты системы и не снабжена багами ;).
5) На ноутбуках это вообще будет грузить проц и диск и как результат - сажать батарейку. Браузер что, должен еще и детектить на чем он работает, чтоли?!> - только в этом случае браузер точно знает, что
> именно надо выгрузить (то есть выгружеатся много меньше)А я зато знаю что если этим не страдать - сэкономится куча времени проца и упадет нагрузка на диск и будет сэкономлено куча кило кода. Сплошные плюсы!
> и что к выгруженному лишний раз обращаться не надо. Так что в нормальном случае
> дисковой активности может стать даже меньше. Тем более, что браузер и
> так к совему кэшу обращается - а здесь ему это не потребуется.Такие "фичи" - только через мой труп. См. выше почему.
> Ну и параметр, отключающий это дело, тоже никто не запрещает добавить.
Тогда он должен быть неактивен по дефолту, хотя-бы как дань уважения ноутам. Иначе их юзеры сожрут сразу. ИМХО фича абсолютно дурная и отдает велосипедизмом начала 90х когда программы сами имплементили своп, потому что не все оси его сами умели, видите ли.
> Прикол в том, что Firefox вообще ничего возвращать в ОС не должен,Почему же? И должен, и возвращает. Если я открыл 200 табов а потом закрыл 150, я имею все основания полагать что оставшимся 50 столько памяти не требуется.
Пока он возвращает лишь небольшой процент (я проверял).
> Пока он возвращает лишь небольшой процент (я проверял).Я тоже проверял и процент достаточно увесистый, вообще-то. И отдает он ее теперь довольно резво, буквально закрыл вкладку - получи память.
Версия фокса и чистый ли он (или с аддонами) ?
> Версия фокса и чистый ли он (или с аддонами) ?9 и 10beta4, аддонов vbybvev - 3 штуки. Отношение peak потребления к current может быть в 2-3 раза запросто. При самом простом юзеже. Если это "незначительный процент" то что ж тогда значительный? oO
Я на 9.0.1 тестировал (14 аддонов и некоторые из них весьма "увесистые") и видел незначительный возврат памяти. Впрочем, тест был отчасти синтетическим, поэтому на выходных ради интереса проверю и сравню с 4ым фоксом.
> на выходных ради интереса проверю и сравню с 4ым фоксом.Я описал тут синтетический тест на котором можно на раз хряпнуть 400 метров памяти и вернуть их. Воспроизводимо как из пушки.
> Пока он возвращает лишь небольшой процент (я проверял).А теперь подожди 10 минут после закрытия, и проверь снова, будешь удивлен.
Кстати у тебя 150 закрытых вкладок должны быть не с тех доменов на которых 50 открытых остались, чтобы память отдавалась. И эддонов которые текут не должно быть активировано, осиль pdf этой новости для примера.
> А теперь подожди 10 минут после закрытия, и проверь снова, будешь удивлен.В новых версиях и ждать не надо :)
> Почему же? И должен, и возвращает. Если я открыл 200 табов а
> потом закрыл 150, я имею все основания полагать что оставшимся 50
> столько памяти не требуется.Это у вас такая логика. А у разработчиков - логика другая. Зачем вообще возвращать кому-то память? Неужели она вообще нужна кому-то, кроме firefox?
> Это у вас такая логика. А у разработчиков - логика другая. Зачем
> вообще возвращать кому-то память? Неужели она вообще нужна кому-то, кроме firefox?У гуглохрома еще хуже - по их мнению операционка должна состоять только их хрома.
> Почему же? И должен, и возвращает. Если я открыл 200 табов а
> потом закрыл 150, я имею все основания полагать что оставшимся 50
> столько памяти не требуется.Не возвращает он уже использованную память, если она не в хвосте кучи. Сами подумайте, есть одна общая куча в которой из-за фрагментации раскиданы свободные и занятые блоки памяти. Никто не будет в здравом уме возвращать операционной системе освободившийся блок из середины кучи, да и не получится такое сделать. Только с хвоста.
> Сами подумайте, есть одна общая куча в которой из-за фрагментации раскиданы
> свободные и занятые блоки памяти. Никто не будет в здравом уме
> возвращать операционной системе освободившийся блок из середины кучи,Сами подумайте, есть такая фигня - garbage collector. Работа у него такая - чистить за другими.
> Сами подумайте, есть такая фигня - garbage collector. Работа у него такая
> - чистить за другими.garbage collector работает на более высоком уровне, _логически_ освобождая блоки для не используемых структур JavaScript. Дырок в куче от этого меньше не становится.
В конце-концов взгляните на графики в указанном в новости PDF, там в самом идеальном случае наблюдается стабилизация и фиксация расхода памяти на определённой величине. Отдачи обратно памяти нет. Может вы RSS смотрите ? По какому признаку вы определяйте, что Firefox отдал память операционной системе ?
>> Сами подумайте, есть такая фигня - garbage collector. Работа у него такая
>> - чистить за другими.
> garbage collector работает на более высоком уровне, _логически_ освобождая блоки для не
> используемых структур JavaScript. Дырок в куче от этого меньше не становится.
> В конце-концов взгляните на графики в указанном в новости PDF, там в
> самом идеальном случае наблюдается стабилизация и фиксация расхода памяти на
> определённой величине. Отдачи обратно памяти нет. Может вы RSS смотрите ?
> По какому признаку вы определяйте, что Firefox отдал память операционной системе
> ?А чо, дефрагментацию как концепцию еще не изобрели?
Лучше уж пусть память жрёт, с дефрагментацией тормозить будет явно. Мерзкий это процесс, куча локов и ограничений на способы работы с памятью (это ж плюсы, не ява какая).
> По какому признаку вы определяйте, что Firefox отдал память операционной системе ?Разумеется по RSS, который и отражает то что физически по факту висит в оперативе.
У меня возвращает сотнями Мб. Может у тебя дополнение поедающее память стоит?
> У меня возвращает сотнями Мб. Может у тебя дополнение поедающее память стоит?Проведите простой эксперимент: Откройте три огромных страниц с кучей изображений в разных вкладках. Закройте среднюю вкладку, закройте первую вкладку. Убедитесь, что не возвращает.
> Закройте среднюю вкладку, закройте первую вкладку. Убедитесь, что не возвращает.А у меня возвращает. И сдувается до размера близкого к тому что было до открытия вкладок. Если б это было не так - я б давно по OOM загнулся уже.
>> Закройте среднюю вкладку, закройте первую вкладку. Убедитесь, что не возвращает.
> А у меня возвращает. И сдувается до размера близкого к тому что
> было до открытия вкладок. Если б это было не так -
> я б давно по OOM загнулся уже.Признайтесь, вы говорите о Firefox, запущенном в Windows. В Linux совсем другая картина.
> Признайтесь, вы говорите о Firefox, запущенном в Windows. В Linux совсем другая картина.Не признаюсь. Вот например даже более хардкорно, можно в вебконсоли опробовать.
var zhopa = new Array(1024*1024*100); document.write(zhopa);При выполнении процесс разбухает с 300 мегов до 700 (потом ловится какой-то эксепшн). При закрытии таба с этим безобразием - сдувается обратно в 300. Нифигасе "невозвращение" памяти...
Это "синтетический" тест.
> Это "синтетический" тест.Он однако ж вполне реалистически жрет память... и отдает ее обратно....
>> Признайтесь, вы говорите о Firefox, запущенном в Windows. В Linux совсем другая картина.
> Не признаюсь. Вот например даже более хардкорно, можно в вебконсоли опробовать.
> var zhopa = new Array(1024*1024*100); document.write(zhopa);
> При выполнении процесс разбухает с 300 мегов до 700 (потом ловится какой-то
> эксепшн). При закрытии таба с этим безобразием - сдувается обратно в
> 300. Нифигасе "невозвращение" памяти...А теперь заполните этот массив случайными данными или лучше создайте десяток массивов поменьше и удивитесь.
> А теперь заполните этот массив случайными данными или лучше создайте десяток массивов
> поменьше и удивитесь.А что должно измениться? Судя по бурному жрачу памяти - оно реально там в памяти появилось. Что поменяет заполнение рандомными данными?
> А что должно измениться? Судя по бурному жрачу памяти - оно реально
> там в памяти появилось. Что поменяет заполнение рандомными данными?Страницы памяти реально выделяются только при первой записи, до этого они лишь помечаются как выделенные.
> Страницы памяти реально выделяются только при первой записи, до этого они лишь
> помечаются как выделенные.Это яваскрипт, а не си, тут переменные всегда инициализируются интерпретатором при объявлении. Hint: undefined - тоже значение переменной.
> Страницы памяти реально выделяются только при первой записи,А вон тот жрач RSS взлетевший с 300 до 700 метров - это чего было? Еще скажите что память не поюзалась, ага :)
> Закройте среднюю вкладку, закройте первую вкладку.открой еще одну пустую вкладку с about:blank закрой все непустые вкладки, подожди 5-10 минут, убедись что память вернулась. Если невернулась, отключи текущие addons, или перестань пялится в расход виртуальной памяти вместо реальной, хотя виртуальную тоже отдает
закрытые вкладки должны быть не с тех доменов на которых открытые остались, чтобы память отдавалась.
> закрытые вкладки должны быть не с тех доменов на которых открытые остались,
> чтобы память отдавалась.Закрыл все вкладки, подождал полчаса, пооткрывал и позакрывал пустые вкладки. addon-ов вообще нет. Память не возвращается (RSS чуть уменьшился, но VSZ как был так и остался). Было 1.2 Гб VSZ и 840 Мб RSS, стало 1.2 Гб VSZ и 796 RSS. Как видите, память заметно возвращается только на чистом и недавно запущенном Fierfox. Если поработать с ним активно пару дней, то почти ничего не возвращает.
озвучь "три огромных страниц с кучей изображений" и версию firefox, я проверю. У меня firefox течет только на 70MB в день.
Может, я чего-то не понимаю, но RSS же - это сколько памяти сожрано без учёта свопа? Так это не интересно. Да, про overcommit знаю - но здесь же уменьшение RSS будет означать, что операционка просто вытолкнула часть в своп - и зачем нам такое счастье?
да, от этого поможет:
# swapoff -aЯ свопом не пользуюсь с тех пор как до 2 GB проапгрейдился, он совершенно не нужен.
А у меня и 4 гига отлично занимаются - крофе файрфокса много чего в памяти висит.
> Я свопом не пользуюсь с тех пор как до 2 GB проапгрейдился,У меня своп тоже не подключен. С 8gb RAM он как-то ни к чему.
smem -P firefox
Он в PowerPoint создавал. В самом начале написано, что из-за этой проги некоторые слайды дублируются. Поэтому и весит так много, наверное.
А отчёт интересный.
Уважаю Файрфокс, но после слов о борьбе за память, понимаешь что архитектура Chrome гораздо лучше.
Я не спец, но осилил "комикс" о Хроме из которого многое ясно, почему Хром лучше "by design".
Комикса не видел, но судя по постоянно запущенным файрфоксу и хромиуму - хромиум жрёт в разы больше памяти на страницу. раза в три так, навскидку.
> Комикса не видел, но судя по постоянно запущенным файрфоксу и хромиуму -
> хромиум жрёт в разы больше памяти на страницу. раза в три
> так, навскидку.стоят chromium 15 (ночная сборка из ppa) и iceweasel 10
http://unno.me/media/chrome/Google%20Chrome.pdfвсё по русски
и всё понятно ... зачем начали создавать свой браузер
почему хром "круче всех"
Отличные комиксы. Серьезно изменили мое отношение к Хрому.
Ага, только они там как-то постеснялись сообщить о том что:
1) Браузер прибит гвоздями к сервисам гугла.
2) Браузер настойчиво навязывает аккаунт гугла.
3) Этот браузер не уважает приваси пользователя.
4) В нем очень мало настроек.
5) И он жрет просто адское количество памяти если открыть более пары вкладок.
6) При обычном браузинге список задач жутко загажен.
7) Они обуели настолько что по дефолту позволяют гребаным вебприложениям остаться в фоне даже после выхода из браузера. Вот уж чего мне не хватало так это запуска всяких там JS биткоин майнеров в режиме демона, без спроса, втихаря!
> 1) Браузер прибит гвоздями к сервисам гугла.Вранье.
> 2) Браузер настойчиво навязывает аккаунт гугла.Вранье.
> 3) Этот браузер не уважает приваси пользователя.Вранье.
> 4) В нем очень мало настроек.Вранье.
> 5) И он жрет просто адское количество памяти если открыть более пары
> вкладок.Вранье.
> 6) При обычном браузинге список задач жутко загажен.5тью процессами хрома? Т.е тоже вранье.
> 7) Они обуели настолько что по дефолту позволяют гребаным вебприложениям остаться в
> фоне даже после выхода из браузера.тоже вранье.
Нос вырастет.
>> 1) Браузер прибит гвоздями к сервисам гугла.
> Вранье.Как мне настроить синхронизацию мимо сервака гугла? В лисе можно и на свой настроить. Ы?
>> 2) Браузер настойчиво навязывает аккаунт гугла.
> Вранье.Без аккаунта гугла некоторые настройки недоступны или бесполезны.
>> 3) Этот браузер не уважает приваси пользователя.
> Вранье.По дефолту активировано много сомнительных настроек, нагибающих приваси пользователя. Перечислить претензии к дефолтам, или поверите на слово? Мне несложно лысую копию на виртуалочку воткнуть.
>> 4) В нем очень мало настроек.
> Вранье.И конечно же вы покажете мне работающие эквиваленты адблокплюса и ноускрипта, да? Которые не только давят фуфло но и не качают его, разумеется?
>> 5) И он жрет просто адское количество памяти если открыть более пары
>> вкладок.
> Вранье.Я в лисе могу открыть 300-400 табов. Хром при этом у меня просто вызывает откровенный OOM.
>> 6) При обычном браузинге список задач жутко загажен.
> 5тью процессами хрома? Т.е тоже вранье.Не 5 а десятками-сотнями. Что для меня является неприемлимым.
>> 7) Они обуели настолько что по дефолту позволяют гребаным вебприложениям остаться в
>> фоне даже после выхода из браузера.
> тоже вранье.Мне скриншот этой настройки активной по дефолту - выложить? :)
> Нос вырастет.
Вы только забыли уточнить это произойдет что у вас. Мне как, понаделать скриншотиков? И это еще для хромиума. В хроме еще и RLZ отсылается угглу.
>>> 1) Браузер прибит гвоздями к сервисам гугла.
>> Вранье.
> Как мне настроить синхронизацию мимо сервака гугла? В лисе можно и на
> свой настроить. Ы?На кой она?
>>> 2) Браузер настойчиво навязывает аккаунт гугла.
>> Вранье.
> Без аккаунта гугла некоторые настройки недоступны или бесполезны.На кой они?
>>> 3) Этот браузер не уважает приваси пользователя.
>> Вранье.
> По дефолту активировано много сомнительных настроек, нагибающих приваси пользователя.
> Перечислить претензии к дефолтам, или поверите на слово? Мне несложно лысую
> копию на виртуалочку воткнуть.Трудно настроить перед началом работы или ты блондинко?
>>> 4) В нем очень мало настроек.
>> Вранье.
> И конечно же вы покажете мне работающие эквиваленты адблокплюса и ноускрипта, да?
> Которые не только давят фуфло но и не качают его, разумеется?Таких в природе не существует. Которые и не качают. Напишешь - премию Алана Тьюринга сразу дадим.
>>> 5) И он жрет просто адское количество памяти если открыть более пары
>>> вкладок.
>> Вранье.
> Я в лисе могу открыть 300-400 табов. Хром при этом у меня
> просто вызывает откровенный OOM.Вот скажи мне - что ты в них видишь, а? У тебя 400 глаз, 400 рук, 400 мозгов? Или, может, 400 ядер в мозге?
>>> 6) При обычном браузинге список задач жутко загажен.
>> 5тью процессами хрома? Т.е тоже вранье.
> Не 5 а десятками-сотнями. Что для меня является неприемлимым.Поставь пару плашек памяти. Они стоят как пара лопат дерьма нынче, в 2012м.
>>> 7) Они обуели настолько что по дефолту позволяют гребаным вебприложениям остаться в
>>> фоне даже после выхода из браузера.
>> тоже вранье.
> Мне скриншот этой настройки активной по дефолту - выложить? :)Пойди повесься в сортире на патчкорде.
>> Нос вырастет.
> Вы только забыли уточнить это произойдет что у вас. Мне как, понаделать
> скриншотиков? И это еще для хромиума. В хроме еще и RLZ
> отсылается угглу.Ты, Литвиненко. Изыди, умер ты. Топор было отравленным.
А если серьезно - ты маленький человечишко с ЧСВ до небес, если думаешь, что твои малюсенькие делишки по-маленькому интересны хотя бы участковому.
>> Как мне настроить синхронизацию мимо сервака гугла? В лисе можно и на
>> свой настроить. Ы?
> На кой она?Иногда может быть полезно. Заливать такое на сервак гугла я меньше всего хочу.
"У нас так нельзя, поэтому не нужно" засчитано.>> Без аккаунта гугла некоторые настройки недоступны или бесполезны.
> На кой они?Я тоже не знаю - у меня нет и не будет никаких аккаунтов гугла. Какого хрена этот DEAD CODE у меня место занимает?
>> По дефолту активировано много сомнительных настроек, нагибающих приваси пользователя.
>> Перечислить претензии к дефолтам, или поверите на слово? Мне несложно лысую
>> копию на виртуалочку воткнуть.
> Трудно настроить перед началом работы или ты блондинко?Я хочу использовать программу, которую можно использовать без опасений за здоровье. А не минное поле где надо с миноискателем гулять.
>> И конечно же вы покажете мне работающие эквиваленты адблокплюса и ноускрипта, да?
>> Которые не только давят фуфло но и не качают его, разумеется?
> Таких в природе не существует. Которые и не качают. Напишешь - премию
> Алана Тьюринга сразу дадим.Для файрфокса - существуют. Натурально не качает то что заблочено, приколитесь? Премию можете автору аддона адблокплюс отправить, имхо. Мне как-то не за что.
>>> Вранье.
>> Я в лисе могу открыть 300-400 табов. Хром при этом у меня
>> просто вызывает откровенный OOM.
> Вот скажи мне - что ты в них видишь, а? У тебя 400 глаз, 400 рук, 400 мозгов?
> Или, может, 400 ядер в мозге?"У нас так нельзя, поэтому не нужно" засчитано. А знаете, в лисе это имеет смысл. С переупорядочиванием табов в табмиксплюсе табы "по теме" открываются рядом. Поэтому все оказывается довольно удобно сгруппировано по смыслу. При этом лис не вылезет за пару гиг памяти, т.е. у меня еще около 5 свободных останется. Хром провоцирует oom-киллер нахрен. Выжрав все 8. Жесть как она есть 8[].
> Поставь пару плашек памяти. Они стоят как пара лопат дерьма нынче, в 2012м.
И так 8 гиг воткнуто. Пошли вы с вашим гуглозондом, если вам 8 гигз мало. Может я еще весь гугл сервировать должен?
>> Мне скриншот этой настройки активной по дефолту - выложить? :)
> Пойди повесься в сортире на патчкорде.Забойный аргумент. Пусть это лучше сделают те кто предлагает к 8 гигзам еще пару плашек докупить.
>> скриншотиков? И это еще для хромиума. В хроме еще и RLZ отсылается угглу.
> Ты, Литвиненко. Изыди, умер ты. Топор было отравленным.Топор - это гуглохром. Плавает примерно так же.
> А если серьезно - ты маленький человечишко с ЧСВ до небес, если
> думаешь, что твои малюсенькие делишки по-маленькому интересны хотя бы участковому.А если серьезно - так я и не понимаю что вы тут испражняетесь тогда. Если это попытка потроллить - расстрою: это слишком жирно и бездарно, тренируйтесь еще.
>Отличные комиксы. Серьезно изменили мое отношение к Хрому.Отличные комиксы. Серьезно изменили мое отношение к Хромиуму.
//fixed
> Отличные комиксы. Серьезно изменили мое отношение к Хромиуму.Комиксы круто, но простейший тест в виде странички с скриптом дико жрущим память и патающимся писать этот немеряный массив в страницу хромиум не осилил, выжирая память гигазами и грузя проц до упора. И хоть бы какой варнинг. Не, фиг там. Можете жрать сколько влезет ресурсов, гугл добрый, ему хомяков не жалко :)
А мне всегда казалось что процессы потребляют больше памяти чем потоки. Так что chrome по своей архитектуре как-раз и должен больше памяти потреблять при нормальной работе а не при одной сферической вкладке открытой в вакууме.
Браузер, разработчики которого не борются за уменьшение использования памяти лучше? Это вы здорово вывод сделали.
> Браузер, разработчики которого не борются за уменьшение использования памяти лучше? Это
> вы здорово вывод сделали.судя по архитектуре Хрому не нужно бороться с утечками памяти.
каждая вкладка - отдельный процесс, закрываешь вкладку и нет процесса и всё что с ним связано.Почитайте! Там про память и его фрагментацию всё сказано и ваш вопрос-сарказм про Хром потеряет смысл.
http://unno.me/media/chrome/Google%20Chrome.pdf
В комиксе написано, что в один процесс они не осилили.
Архитертура хороша, но факт остается фактом, потребление памяти Chrome зашкаливет, и это единственное что мне в нем очень не нравится, держать в нем большое количество вкладок (даже 10-15) становится очень не выгодно
> Архитертура хороша,Она имеет свои плюсы и минусы. Изоляция - хороша, да. Но при открытии 100 вкладок это выжирает всю памяти в системе и засирает весь список процессов. Неудобно по улице в водолазном костюме ходить. Хоть он и отменяет риск утонуть.
>> Архитертура хороша,
> Она имеет свои плюсы и минусы. Изоляция - хороша, да. Но при
> открытии 100 вкладок это выжирает всю памяти в системе и засирает
> весь список процессов. Неудобно по улице в водолазном костюме ходить. Хоть
> он и отменяет риск утонуть.Водолазный костюм будет плавать за Вас?
Тут нужнее умение ПЛАВАТЬ. Тогда костюм - лишнее.
С моей точки зрения фокс - умение плавать. Круто настраиваемое.
> Тут нужнее умение ПЛАВАТЬ. Тогда костюм - лишнее.Ну посмотрим, как вы пару часов без оборудования на 50 метрах проработаете.
Учитывая стабильность современных браузеров - они вообще не знают, что такое уметь плавать.
Поэтому работать без ограждения - самоубийство.
> Водолазный костюм будет плавать за Вас?Нет, но он не даст мне захлебнуться. Поэтому умение плавать будет пофигу :). Только вот носить его на постоянной основе - неудобно, бл.
>Но при открытии 100 вкладоку хрома остается 5 процессов, а не то что вы там нафантазировали.
> у хрома остается 5 процессов, а не то что вы там нафантазировали.Мой список процессов с вами категорически не согласен.
>> Архитертура хороша,
> Она имеет свои плюсы и минусы. Изоляция - хороша, да. Но при
> открытии 100 вкладок это выжирает всю памяти в системе и засирает
> весь список процессов. Неудобно по улице в водолазном костюме ходить. Хоть
> он и отменяет риск утонуть.Повторяю снова. Что можно открыть в сотне-пяти вкладок? Сотню-пяток сот фоток бущихся девок? Или у аффтаров по 100 мозгов, глаз и рук? Ни? Раньше мужики мерялись у кого член длиннее, а красноглазы, поскольку не мужчины, меряются у кого в браузере вкладок больше? Правда, эти вкладки такую буйню обычно содержат...
> Повторяю снова. Что можно открыть в сотне-пяти вкладок?Я открываю все что потенциально хотелось бы посмотреть по некоей теме. Таких подборок может быть несколько. Навигировать с табмиксплюсом довольно удобно - сперва быстро прикидываем границы подборки по значкам сайтов, а потом уже более точно прицеливаемся. 400 страниц это конечно перебор и если сильно увлечься, но уж сотню-две в крейсерском режиме можно вообще не напрягаясь.
>не выгодноШтрафуют? Или может быть ругают?
> судя по архитектуре Хрому не нужно бороться с утечками памятиНе нужно, но там всё гораздо хуже - ничего не течёт, но by design просто жрёт на порядок больше. На моеё машине > 50 вкладок в хром просто не лезут, FF без проблем держит несколько сотен.
> На моеё машине > 50 вкладок в хром просто не лезут, FF без проблем держит несколько сотен.Да чего стесняться, скажите сразу, что chrome с одной простейшей страничкой не влезает в 100 гигов, а Firefox с тремя миллионами вкладок ютуба помещается в 640 килобайт.
Мы вам верим, конечно же.
> влезает в 100 гигов, а Firefox с тремя миллионами вкладок ютуба
> помещается в 640 килобайт.Как бы вам сказать, лис с 400 вкладками - работает. Хромиум при попытке открыть это в моей конфиге ловит OOM и провоцирует oom-killer где-то в районе 250-300.
>> влезает в 100 гигов, а Firefox с тремя миллионами вкладок ютуба
>> помещается в 640 килобайт.
> Как бы вам сказать, лис с 400 вкладками - работает. Хромиум при
> попытке открыть это в моей конфиге ловит OOM и провоцирует oom-killer
> где-то в районе 250-300.Мля, мужик. Я никому не скажу - но опиши ради всего святого, ЧТО ТЫ ДЕРЖИШЬ ОТКРЫТЫМ В 400 ВКЛАДКАХ И КАК ТЫ ЭТО УМУДРЯЕШЬСЯ ВОСПРИНИМАТЬ?!
> ЧТО ТЫ ДЕРЖИШЬ ОТКРЫТЫМ В 400 ВКЛАДКАХ И КАК ТЫ ЭТО УМУДРЯЕШЬСЯ ВОСПРИНИМАТЬ?!Все что угодно. Например если мне надо 20 даташитов на разные компоненты - я могу открыть сначала по списку все 20, а потом неспешно переваривать. А если я отвлекся и решил что-то почитать - я могу открыть десяток-другой потенциально интересных статей. Вот так в пике постепенно и наберется до 300-400 в принципе, иной раз. А что, восстановление сессии - есть. И как бонус не надо ждать загрузки страниц. Совсем. Как ориентируюсь? А у лисы знаете ли есть tabmixplus, где можно настроить открытие новых вкладок рядом. Поэтому оно оказывается логически сгруппированым. И достаточно на глаз быстро seek-нуть чисто по значкам вкладок и далее среди нескольких табов выбрать нужное. В хроме так не катит потому что я не в курсе аналогов tabmixplus позволяющих заоверрайдить идиотский порядок открытия табов.
+1. Так же работаю. Правда, больше 200 вкладок не помню - но это, в общем-то, тоже для хрома практически неподъёмно. Впрочем, у меня для таких дел опера живёт. Благо она ещё не разучилась не лезть в сеть и не обновлять страницу, если её об этом не просили (в том числе после перезапуска). Для долго висящих вкладок - актуально, а то перезагрузишь - а там уже прибито то, что прочесть хотел. Ну и жрёт она всё же поменьше фокса.
> +1. Так же работаю. Правда, больше 200 вкладок не помнюНу 400 - это не крейсерский режим, а в пике, если увлечься. Но как-то фигово если при очередном открытии страницы случается OOM и половина оказывается расстреляно. Еще более странно - словить OOM в системе с 8Г памяти. Это вообще сюрреализм какой-то. Даже забив на тот факт что там несколько виртуалочек крутится иногда.
Ну у меня опера для таких дел, в ней вроде экономичнее всего получается по памяти
> Ну у меня опера для таких дел, в ней вроде экономичнее всего получается по памятиНе, спасибо. Этим господам, сперва делавших адваре, а потом спайваре лично я как-то доверять свои данные не собираюсь. Они конечно утверждают что теперь они белые и пушистые, но поскольку сорцев нет - никто не может проверить это утверждение.
Прибил вкладку => прибился процесс - особо не надо бороться.
> почему Хром лучше "by design".Понятия о хорошем у всех свои. Гугл относится к данным пользователя как проститутка, торгуя ими. И активно проталкивает свои сервисы. Эта политика не могла не найти отражения в браузере.
> Понятия о хорошем у всех свои. Гугл относится к данным пользователя как
> проститутка, торгуя ими. И активно проталкивает свои сервисы. Эта политика не
> могла не найти отражения в браузере.А мозилла относится к юзерам, как клиническим идиотам, верящим в любую лапшу. Что тоже сказалось на их продукции :)
> А мозилла относится к юзерам, как клиническим идиотам, верящим в любую лапшу.
> Что тоже сказалось на их продукции :)Зато они нормально относятся к приваси пользователя, не пытаются навязать какие либо аккаунты и позволяют указать свой сервер синхронизации. А еще там есть реально работающие adblockplus и noscript, а не декоративная фигня как в хромиуме, которая картинки прячет но все-равно качает их. Что дико бесит т.к. некоторые сервера рекламщиков могут сильно клинить загрузку страницы.
Еще кстати у хромиума крайне глючная буфферизация HTML5 видео почему-то. Лиса намного прямее реализовала это. Честно говоря даже удивительно что лис лучше гуглохрома работает с гугловским же webm. Гуглу явно не помешало бы обратить внимание на поддержку своего формата своими же браузерами.
>[оверквотинг удален]
>> Что тоже сказалось на их продукции :)
> Зато они нормально относятся к приваси пользователя, не пытаются навязать какие либо
> аккаунты и позволяют указать свой сервер синхронизации. А еще там есть
> реально работающие adblockplus и noscript, а не декоративная фигня как в
> хромиуме, которая картинки прячет но все-равно качает их. Что дико бесит
> т.к. некоторые сервера рекламщиков могут сильно клинить загрузку страницы.
> Еще кстати у хромиума крайне глючная буфферизация HTML5 видео почему-то. Лиса намного
> прямее реализовала это. Честно говоря даже удивительно что лис лучше гуглохрома
> работает с гугловским же webm. Гуглу явно не помешало бы обратить
> внимание на поддержку своего формата своими же браузерами.Мля, вот почему мне хром ничего не навязывает? Может, я не социализированная обезьяна с патологической зависимостью от всякого рода вебосервисосоциалкозаразы? Я даже не понимаю, о чем тут стонет мемфф. Кто ему навязывает? Где навязывает? Что навязывает?
> не понимаю, о чем тут стонет мемфф. Кто ему навязывает? Где
> навязывает? Что навязывает?В настройках хрома. Какие-то аккаунты хотят. Ладно бы на _моем_ сервере. А то на каком-то постороннем и только так. Более того, когдя я открываю новый таб - там реклама гребаного апстора гугла. И никакого очевидного метода выпилить этот шит. Я что, из сорца чтоли должен это пересобирать? Лис в этом плане культурнее - для новой вкладки по дефолту просто чистенькое белое поле. Без гребаной рекламы каких-то сторов.
> но осилил "комикс" о Хроме из которого многое ясно, почему Хром лучше "by design".Комикс - замануха для таких неспецов. Всё ровно наоборот - by design он жрёт гораздо больше памяти на большом числе вкладок, и, в отличие от FF, это никак вылечить нельзя. Учитывая остальные косяки хрома, у FF конкурентов нет.
Утечки памяти значительно хуже чем потребление. Освойте же матчасть наконец.
Не знал, что хром еще и течет :(
> Не знал, что хром еще и течет :(Течет хром или не течет - с точки зрения юзера, никакой разницы.
Из-за грамотной архитектуры, утечки не приводят к непрерывном увеличению употребления памяти, как в firefox.
И это огромный плюс хрома.
> И это огромный плюс хрома.Какая мне разница из-за чего oom killer все пришьет, а?
> Комикс - замануха для таких неспецов. Всё ровно наоборот - by design
> он жрёт гораздо больше памяти на большом числе вкладок, и, в
> отличие от FF, это никак вылечить нельзя.Потребление памяти на процесс можно снижать.
И пока разработчики firefox пишут сказочки и бампают номер версии, разработчики хрома допиливают свой продукт.
> Потребление памяти на процесс можно снижать.
> И пока разработчики firefox пишут сказочки и бампают номер версии, разработчики хрома
> допиливают свой продукт.Хром на одном и том же наборе страниц жрет намного больше памяти. И в последних версиях хрома я действительно ничего кроме бампа версий не вижу.
>> но осилил "комикс" о Хроме из которого многое ясно, почему Хром лучше "by design".
> Комикс - замануха для таких неспецов. Всё ровно наоборот - by design
> он жрёт гораздо больше памяти на большом числе вкладок, и, в
> отличие от FF, это никак вылечить нельзя. Учитывая остальные косяки хрома,
> у FF конкурентов нет.Враньё, на большом числе вкладок oveehead от отдельных процессов в Chrome гасится за счёт более эффективного освобождения памяти. Поэтому при большом числе вкладок и длительной работе Chrome жрёт заметно меньше памяти, чем Firefox.
> Враньё, на большом числе вкладок oveehead от отдельных процессов в Chrome гасится
> за счёт более эффективного освобождения памяти. Поэтому при большом числе вкладок
> и длительной работе Chrome жрёт заметно меньше памяти, чем Firefox.Я уж заметил - лиса 400 табов осиливает и еще дофига оперативы свободно, а на хромиуме уже с 250-300 табами случается OOM на 8-гиговой машине. Идите к черту с такой эффективностью длительной работы.
>> Враньё, на большом числе вкладок oveehead от отдельных процессов в Chrome гасится
>> за счёт более эффективного освобождения памяти. Поэтому при большом числе вкладок
>> и длительной работе Chrome жрёт заметно меньше памяти, чем Firefox.
> Я уж заметил - лиса 400 табов осиливает и еще дофига оперативы
> свободно, а на хромиуме уже с 250-300 табами случается OOM на
> 8-гиговой машине. Идите к черту с такой эффективностью длительной работы.Мужик! Ради бога - расскажи, чем ты эффективно занимаешь сотни табов, что в них и как ты это хаваешь в режиме вытесняющей многозадачности всего ДВУХ полушарий мозга хомо? Или ты мутант?
>>> Враньё, на большом числе вкладок oveehead от отдельных процессов в Chrome гасится
>>> за счёт более эффективного освобождения памяти. Поэтому при большом числе вкладок
>>> и длительной работе Chrome жрёт заметно меньше памяти, чем Firefox.
>> Я уж заметил - лиса 400 табов осиливает и еще дофига оперативы
>> свободно, а на хромиуме уже с 250-300 табами случается OOM на
>> 8-гиговой машине. Идите к черту с такой эффективностью длительной работы.
> Мужик! Ради бога - расскажи, чем ты эффективно занимаешь сотни табов, что
> в них и как ты это хаваешь в режиме вытесняющей многозадачности
> всего ДВУХ полушарий мозга хомо? Или ты мутант?В голову приходит лишь одно. Он - боевой селигерыш, который через 400 веб-прокси срет пропутинскими постами с 400 акков вконтакте, вгазете, вфейсбуке.
> В голову приходит лишь одно. Он - боевой селигерыш, который через 400
> веб-прокси срет пропутинскими постами с 400 акков вконтакте, вгазете, вфейсбуке.Я? Пропутинскими? Это было бы в высшей степени оригинально :)
Кстати если вы о прокси вспомнили, так уж получите и тут багЪ: в xubuntu это угребище (хром) вообще настройки прокси в GUI отобразить не может. По идее оно должно бы открывать системные настройки, но для хубунты оно сие не умеет. И просто фэйлит это начинание. Можно как максимум с командной строки задать. Как юзерфрендельно, ага :). В лисе почему-то нормальный диалог настройки есть хотя-бы.
Ну вот у меня сотни вкладок. Начал изутать какой-то вопрос - выгребаешь всё, что кажется относящимся к делу, и потом спокойно смотришь. Если отвлекли, или надо переключиться на что-то другое, или нет желания именно этой темой сейчас заниматься - страницы так и висят открытыми, пока не вернешься к ним.Плюсы: 1) не забудешь, что хотел данную страницу просмотреть - всё равно в списке табов попадётся; 2) даже если упал сервер или придурок-модератор/хозяин/злые инопланетяне прибили интересный мне контент - во вкладке он по-прежнему открыт.
Я бы рад на диск всё это класть - но способов делать это с тем же удобством, что и оставлять во кладке, да еще чтобы при этом страница неломалась - не нашел.
> Я бы рад на диск всё это класть - но способов делать этоTry Ctrl+S, Luke!
> Враньё, на большом числе вкладок oveehead от отдельных процессов в Chrome гасится за счёт более эффективного освобождения памяти.мечты, мечты. У меня firefox течет всего лишь на 70 MB за день активного использования (правда я noscript пользуюсь). Так что не гасится уже ничто, сделан большой прогресс в последних версиях
> Учитывая остальные косяки хрома, у FF конкурентов нет.Скорее, так: учитывая косяки архитектуры firefox (которые никто не собирается исправлять - квалификации не хватает), он хрому не конкурент.
> - квалификации не хватает), он хрому не конкурент.Да, столько памяти сожрать он не осиливает :)
Что за фигня. У фокса есть резерв в архитектуре - увиличивать общее число работающих процессов (как в apache) и распределять табы на них. Тогда коэффициент 1:1 уровняет хром и фокс по количеству процессов на таб. Но пусть пока мозилловцы прокачивают другие подсистемамы браузера.
> в следующих версиях браузера тенденция сокращения потребления памяти будет сохранена.Значит примерно к 20-й версии им придется научить браузер заказывать планки оперативки без ведома пользователя :)
и самому на них зарабатывать на форексе
> и самому на них зарабатывать на форексеБыло бы неплохо. Я одобряю такую функциональность, если он будет делиться со мной :)
А почему речь идёт только об утечке памяти ? Неужели ни у кого не было утечки процессорного времени ? Меня просто выбешивает что иногда лиса начинает использовать 100% процессорного времени(нет, не зависает) даже если закрыть все сайты эта ... продолжает жрать процессор, только перезагрузка спасает.
Скорей бы хром запилил все нужные мне расширения.
И процессор потечёт ещё сильнее, сразу всеми N тредами, по количеству вкладок. Потому, что течёт, скорее всего, именно какое-то столь нужное расширение. Мне, например, хватает 5 расширений и они, хвала аллаху, не текут ни так, ни эдак.
Повезло Вам что хватает 5 расширений и в двойне что не текут. А у меня 50 и все нужные.
> А у меня 50 и все нужные.Ну так попробуйте в другой браузер воткнуть 50 и посмотреть что с ним станет, ага.
> Неужели ни у кого не было утечки процессорного времени ?Не было. Может у тебя расширение какое-то так гадит?
Возможно, т.к. расширений много стоит. Но инструментария который помог бы отследить...
>А почему речь идёт только об утечке памяти ? Неужели ни у кого не было утечки процессорного времени ? Меня просто выбешивает что иногда лиса начинает использовать 100% процессорного времени(нет, не зависает) даже если закрыть все сайты эта ... продолжает жрать процессор, только перезагрузка спасает.
>Скорей бы хром запилил все нужные мне расширения.Происходит такое очень редко: в 95% случаев заканчивается руганием бровзера на JavaScript который "обнаглел"; в 4% случаев спасает килл процесса plugin-container (там флеш, соббаккос "обнаглел"); 1% покрыто мраком (кроме случая когда стороннее приложение съело память со свопом и проги начали мягко говоря "шалить").
Когда браузер ругается на джаваскрипт это другой случай в котором до вывода предложения завершить скрипт интерфейс лисы залипает, в моём случае лиса выжирает процессор но при этом сайты грузятся интерфейс работает.>в 4% случаев спасает килл процесса plugin-container
Попробую.
попробуйте расширение noscript c включенной блокировкой flash (или как минимум расширение flashblock).
в 100% случаев помогает удаление FF и установка нормального браузера.
> в 100% случаев помогает удаление FF и установка нормального браузера.Не катит. Путь к счастью должен идти через страдания.
> в 100% случаев помогает удаление FF и установка нормального браузера.Нормальный - это гуглохром чтоли, адски жрущий оперативку и без всяких утечек и не снабженный нормальным адблокером и удавкой интерактивности? Не настраиваемый под себя? Зато гуглозонды в наличии. Вот уж гадость.
Как в нем хотя-бы сделать чтобы при открытии нового таба мне не показывали рекламу сраного гугловебостора? Я _не_ _хочу_ это каждый раз видеть!
>в версии Firefox 7 потребление памяти было сокращено на 20-30%, добавленные в Firefox 8 наработки позволили уменьшить расход памяти ещё приблизительно на 14%, а в Firefox 9 - ещё на 16%. По заявлению разработчиков в следующих версиях браузера тенденция сокращения потребления памяти будет сохранена.если так пойдет дальше, то еще версии через три FF при запуске начнет увеличивать объем памяти в системе. Молодцы разработчики, чо.
Я в багзилле вижу, что только к 12й версии они что-то серьёзное готовят.[Bug 658738] [meta] We seem to be leaking hundreds of windows until shutdown during browser-chrome tests
и по зависимостям посмотрите :) Это же просто ацкий АД.ZombieCompartments (https://bugzilla.mozilla.org/show_bug.cgi?id=668871) наблюдаю у себя в полный рост, сутками.
>Например, в версии Firefox 7 потребление памяти было сокращено на 20-30%, добавленные в Firefox 8 наработки позволили уменьшить расход памяти ещё приблизительно на 14%, а в Firefox 9 - ещё на 16%.Верится с трудом. FF9 сейчас отъел 360мегабайт.
И это при том что у меня включена опция browser.sessionstore.restore_on_demand и из всех вкладок реально открыты не больше 8.
> Верится с трудом. FF9 сейчас отъел 360мегабайт.Я тебе и полтора гига покажу. Открыв 400 вкладок - не хитрое дело. А ты их в чем-нибудь еще открой и пофигей от результатов, чтоли :)
интересно - тот аноним, который хвастает 400 табами в FF - он что, стресс-тестером в мозилле работает? Не представляю, зачем это может пригодиться.Кстати, если меньше налегать на табы, а больше - на окна, с отъеданием памяти будет попроще.
Для меня с недавних пор память уже не главное узкое место на моём ПК. Благо DDR3 очень дешевая, теперь купить 4Гб планку за 20 баксов не проблема.
Но для старых компьютеров и нетбуков это очень важный вопрос, поэтому FF займёт место на компьютерах с малым объёмом памяти. А Chrome - на более шустрых компьютерах:)
ужасное вранье прочитал я в комментах.
если фф и течет, то течет не значительно. ок, я не грамотный.
ну начнем с того, что у меня весьма старый компьютер но я всегда старался использовать последние версии фф, однако при памяти.. да что уж там
user@localhost:~>free
total used free shared buffers cached
Mem: 1019556 652620 366936 0 35876 322872
-/+ buffers/cache: 293872 725684
Swap: 1052220 0 1052220
user@localhost:~>
вот эта машина имела больше месяца аптайма с работающим фф, с флешем, с онлайн видео, с онлайн радио. да, подчас уползал в своп,
да, было недостаточно памяти, но только при работе с большими картинками в гимпе. на том заткнусь.
привет убунтушникам, короче.
> в Firefox 7 было сокращено на 20-30%
> в Firefox 8 - ещё приблизительно на 14%
> в Firefox 9 - ещё на 16%.в сумме 50-60%
это в сравнении с какой версией ?!?!?!?
на одном и том-же железе последний Firefox 3 жрал !ВТРОЕ! меньше чем сейчас жрёт Firefox 9
они там шибанулись ???????
с версиями 6,5,4
> Firefox 33.0, 3.5, 3.6 - это три разных релиза.
> !ВТРОЕ! меньшеНет, не втрое.
> они там шибанулись ???????У меня в крейсерском режиме сейчас вместо 1.2 гб стало 800 мб. Чтоб они так шибались, да по чаще, почаще.
> на одном и том-же железе последний Firefox 3 жрал !ВТРОЕ! меньше чем
> сейчас жрёт Firefox 9всмысле жрал? ты говоришь это в какомто прошедшем времени...
....ну установи его СЕЙЧАС да и погляди сколько он жрёт :-)
во времена Firefox-3 -- сайты небыли настолько нашпигованны jQuery-эффектами .. и интернеты были 128~256 киблобитными (приходилось экономить на навороченности) .... да и вполне очевидно было что по 100 вкладок никто не открывал :-)
а ещё существовала опасность что сложный сайт (с самыми последними наворотами модного CSS2 и HTML4) -- некорректно отобразится на Opera и MsIE... и поэтому просто навсего web-мастера не делали особо ничего сложного... (это сайчас все браузеры проходят ACID-тэсты.. а во времена Firefox-3 помните что было?)
# p.s.: на одном из моих компьютеров установлен Firefox-3.6 .. и работает он ябы сказал гавнисто даже очень :-) с точки зрения отжирания памяти и тормазнутости
> в сумме 50-60%Научитесь считать!
Если в 6ой версии 100%
В 7ой 100%-20%=80%
В 8ой 14% от 80%!!!! 80%-(0.8*14)%=80%-11%=69%
В 9ой 16% от 69%! 69%-(0.69*16)%=69%-11%=58%
То-есть 9ая версия потребляет ~58% от потребления 6ой. Это на 40%, а не на 50-60% меньше.
с версиями 6,5,4> Firefox 3
3.0, 3.5, 3.6 - это три разных релиза.
Не наблюдаю в фф утечек, всё замечательно, разрабы молодцы :) Единственное от чего лиса жирнеет так это грёбынй флеш под linux :( Но это уже отдельный вопрос к adobe...
> Единственное от чего лиса жирнеет так это грёбынй флеш под linuxпроблема только у тех кто его (adobe flash player) себе устанавливал :-D
> от чего лиса жирнеет так это грёбынй флеш под linux :(Во первых это нынче отдельный процесс. Во вторых лично я себе его просто не устанавливал. Ютуб и так работает, а ради рекламы его ставить как-то не очень прикольно.
> Во первых это нынче отдельный процесс.народные умельцы -- обычно правят about:config чтобы pluginconteiner не создавался в отдельный процесс...
(ну вы понимаете -- тип чтобы поменьше памяти расходовалось :-D :-D . и чтобы показать (себе и другим) свою крутость в понимании методов оптимизации компьютера :))
....а вот после этого оказывается становится очень удобно валить все проблемы adobe-flash-player -- на браузер :-D .. ведь отделить кто виноват уже не так просто :-D
Да не отдаёт при закрытии потому что страница хранится в памяти для функционала навроде FastBack и Undo Close Tab. Если кеш страницы не просрочен то ничего грузится с сети/диска не будет и страница отобразится моментально. Если страница давно не посещалась то она выталкивается из стека и ее память возвращается/занимается другой страницей. Этим всем делом можно чень гибко управлять в about:config вплоть до количества кешируемых страниц и при каких условиях перегружать страницу с сети. Так что не надо, можно отключить это все дело и будет возвращатся память при закрытии вкладки. Только надо ли.