Один из разработчиков Mozilla опубликовал [3] интересный доклад (PDF [4], 13 Мб, 37 стр.), в котором изложена история борьбы с утечками памяти в Firefox и подробности внесённых за последний год оптимизаций, направленных на снижение потребления памяти в Firefox. В докладе разобраны некоторые типовые ошибки и представлен обзор проблем, возникающих при использовании тех или иных стратегий выделения памяти.
В последнее время в рамках проекта MemShrink [5] была проделана большая работа по сокращению роста потребления памяти при интенсивном использовании браузера. Например, в версии Firefox 7 [6] потребление памяти было сокращено на 20-30%, добавленные в Firefox 8 наработки позволили уменьшить расход памяти ещё приблизительно на 14%, а в Firefox 9 [7] - ещё на 16%. По заявлению разработчиков в следующих версиях браузера тенденция сокращения потребления памяти будет сохранена.
В настоящее время работа сосредоточена [8] на борьбе с излишним потреблением памяти в дополнениях, таких как AdBlock и Firebug. Для этого ведётся подготовка специального инструментария для автоматизации выявления утечек памяти в дополнениях. Также планируется внести улучшения, связанные с упаковкой памяти в сборщике мусора (для уменьшения фрагментации памяти), переработать код декодирования изображений (в настоящее время не эффективно расходуется память при отображении страниц с большим числом изображений), реализовать механизм адаптивного управления памятью (для систем с небольшим размером ОЗУ будут использоваться более агрессивные алгоритмы вытеснения уже не используемых данных), автоматизировать выявление регрессивных изменений.
Ссылки:
[1] http://htfl.ru/cat-news-mozilla
[2] http://htfl.ru/cat-news-novosti-po
[3] /out.php?link=http://blog.mozilla.com/nnethercote/2012/01/17/notes-on-reducing-firefoxs-memory-consumption/
[4] /out.php?link=https://wiki.mozilla.org/images/9/93/LCA2012.pdf
[5] http://htfl.ru/news/v-ramkakh-proekta-memshrink-razvernuta-borba-s-utechkami-pamyati-v-firefox
[6] http://htfl.ru/news/reliz-firefox-70-i-soputstvuyushchikh-proektov-mozilla
[7] http://htfl.ru/news/vyshel-firefox-9
[8] http://htfl.ru/news/mozilla-razvernet-borbu-s-utechkami-pamyati-v-dopolneniyakh-i-testiruet-fonovye-obnovleniya-k-f