Основные улучшения памяти в Firefox 15
Стабильная версия Firefox 15 будет выпущена примерно через шесть недель, и она принесет с собой серьезные улучшения памяти, которые могут раз и навсегда покончить с изображением потребителя памяти в браузере. Ранее мы показали, что использование памяти Firefox значительно улучшилось в последних версиях браузера (см. Chrome использует намного больше памяти, чем Firefox, Opera или Internet Explorer), и что представление браузера о неэффективном использовании памяти больше уходит в прошлое, чем на то, на что сегодня жалуются многие пользователи.
Но с выпуском Firefox 15 все становится еще лучше. Пользователи бета-версии, Aurora или ночного канала уже пользуются улучшениями. Mozilla в основном нашла способ устранить дополнительные утечки памяти в браузере, которые часто были причиной увеличения памяти с течением времени.
Firefox теперь пытается выполнить очистку после дырявого кода хрома. В моем подходе используется тот факт, что код хрома находится в отдельном отсеке от кода веб-страницы. Это означает, что каждая ссылка из кода хрома на код содержимого проходит через межсекционную оболочку, которую мы поддерживаем в списке. Когда осуществляется навигация по странице или закрывается вкладка, мы достаем хромированный отсек и берем этот список. Мы просматриваем этот список и «вырезаем» все обертки, указывающие на объекты на странице, от которой мы избавляемся. Затем сборщик мусора может освободить память, используемую страницей, которая теперь исчезла.
Утечки памяти были обнаружены во всех типах надстроек, включая четыре самых популярных надстройки для браузера: Adblock Plus, Video DownloadHelper, Greasemonkey и Firebug.
Взгляните на следующую таблицу, которая довольно четко показывает разницу. Синяя полоса показывает использование памяти браузером при 151 открытой вкладке, красная полоса показывает использование памяти тем же браузером после того, как 150 вкладок были снова закрыты.
В этом случае надстройка sideAdvisor 3.41 с утечкой памяти заставляла браузер использовать намного больше памяти после закрытия вкладок, чем он должен был использовать. В Firefox 15 использование значительно снизилось, несмотря на надстройку с утечкой памяти.
Не каждый пользователь Firefox может увидеть эти улучшения. Например, если вы не используете ни одного надстройки, вы вообще не увидите улучшений. Но кто в здравом уме использует Firefox без надстроек? Подробнее об изменениях читайте на Николая Пустоты Блог Mozilla.
Вы работаете с Firefox? Если да, как вы относитесь к последним достижениям в области производительности?
