Sandro Villinger. What's the Fastest Browser? Maybe You're Measuring Wrong. www.itworld.com

 

 

Какой из браузеров действительно самый быстрый?

Почему при оценке реальной производительности браузеров стандартные тесты фактически бесполезны.

Большинство современных тестов производительности браузеров ориентированы на измерение скорости выполнения сценариев JavaScript, кода HTML5 или времени загрузки веб-страниц. По общему мнению, такое тестирование должно выдавать дополнительную информацию о браузере, для того чтобы помочь подтвердить сделанный ранее выбор или, напротив, заставить заняться поиском чего-нибудь другого.

 

Почему эталонные тесты браузера не имеют ничего общего с реальностью?

Давайте бросим объективный взгляд на реальность. Хотя скорость выполнения различных операций и продолжает теоретически оставаться важным критерием при тестировании браузеров, производительность представителей последнего поколения этих программ возросла столь значительно, что некоторые из тестов вряд ли удастся трансформировать в сценарии реального мира. Можно смело утверждать, что даже профессионалы в IT-сфере плохо себе представляют, как число очков, набранных браузерами при прохождении тестов, влияет на скорость выполнения ими своих повседневных операций.

Какой из браузеров действительно самый быстрый?

 

А имеют ли эти фантастические цифры вообще хоть какой-то смысл?

Обсуждая все эти чисто теоретические тесты, мы забываем о таком важном факторе, как конечный пользователь. Человеческий глаз не в состоянии отличить скорость загрузки аплета JavaScript в среде IE9 (где соответствующая операция выполняется за 221 мс) от скорости его загрузки в среде Firefox 17 (где на это уходит 220 мс). Кто заметит, что Chrome открывает веб-сайт за 778 мс, а IE 9 – за 953 мс? В процессе своей деятельности люди оперируют секундами, а не миллисекундами. Разве мы улавливаем, что хроника Facebook в каком-то из браузеров появляется на экране на доли секунды раньше? Сейчас буквально все производители браузеров манипулируют ничего не значащими цифрами, норовя такими рекламными ходами отодвинуть соперников подальше от кормушки.

В эту круговерть вовлечены уже все пользователи, начиная от научных журналистов и профессионалов в IT-области и заканчивая новичками. Скорость выполнения скриптов и рендеринга может считаться ценным критерием для разработчиков веб-технологий или в определенных сценариях (к примеру, анимация в среде браузера), но со временем мы достигаем рубежа, за которым различия уже неощутимы для пользователя. Гораздо большее значение имеют факторы, от которых действительно зависит, насколько быстро (или медленно) веб-сайт отображается на экране. А браузер – это всего лишь маленькое звено в цепи множества технологий, приложений и устройств, определяющих, как быстро страница IT-World или Facebook появится на мониторе. К таким факторам влияния относятся:

• Установленный в компьютере графический процессор и графический драйвер. Для отображения контента на экране веб-браузеры используют механизмы ускорения графического процессора, от которого очень сильно зависит скорость выполнения операций.

• Текущая загрузка процессора.

• Инструменты обработки аудио и видео, а также межсетевые экраны.

• Число компьютеров, которые одновременно делят между собой пропускную способность внешнего канала.

• Сетевой стек и инструменты фильтрации.

• Инструменты независимых разработчиков, получающие доступ к Интернету и осуществляющие передачу данных, проверку и обновление ПО в фоновом режиме.

• Способ подключения вашего ПК к маршрутизатору, модему или коммутатору интернет-провайдера.

• Производительность, трафик и количество узлов веб-сервера.

• Контент, размещенный на веб-сайтах независимыми производителями, а также необязательные или плохо написанные сценарии.

• Наверняка есть еще, по крайней мере, несколько моментов, влияющих на то, как пользователь воспринимает функционирование веб-сервера

Продолжительность загрузки веб-страниц обусловлена всеми указанными причинами. Если в нужное время одна или несколько связей в цепочке не срабатывает, то невозможно будет рассчитать скорость работы браузера. Поэтому судить о нем по скорости выполнения скриптов или по отображению веб-сайта в целом, по-моему, чисто теоретическое занятие, не имеющее никакого отношения к реальности. Даже если в скорости работы браузеров наблюдаются заметные отличия, следует установить на свой ПК локальный веб-сервер и измерять скорость отображения локальных веб-страниц. Это позволит исключить большинство (если не все!) факторов, описанных выше.

Есть и еще одна причина, влияющая на поведение браузера и связанная с тем, как работают с этим приложением опытные пользователи. Допустим, мы просматриваем какой-то сайт и нажимаем среднюю кнопку или щелкаем по левой кнопке, удерживая клавишу для того, чтобы открыть одну или несколько ссылок на новых вкладках. Сами же тем временем продолжаем изучать текущую веб-страницу. Между тем в фоновом режиме загружается другой сайт, который, возможно, уже готов и лишь выжидает, когда же мы завершим просмотр активной страницы. Это одна из многих повседневных процедур, выполняемых пользователем. Конечно, мне не хотелось бы обсуждать индивидуакльные привычки, но прежде чем приступать к выбору браузера на основе характеристик его производительности, они должны иметь четкое представление о реальной работе в Интернете.

 

Тесты

Давайте проведем несколько классических тестов производительности. Инициаторы большинства сравнений популярных веб-браузеров почему-то не учитывают тот факт, что нынешнее поколение таких продуктов потребляет ресурсы гораздо интенсивнее, чем предыдущие. Новые операционные системы, например Windows 8, становятся все более «изящными», размещаясь на маломощных мобильных устройствах (планшетных компьютерах, первом поколении ультрабуков) или на тонких клиентах. Однако браузеры, являющиеся, пожалуй, самыми важными приложениями любого ПК, становятся все более прожорливыми. И если в системах старшего класса большой объем памяти, занимаемый браузером, может приводить лишь к раздражающим задержкам или аварийному завершению работы программы, то у мобильных устройств это выльется в катастрофическое падение быстродействия самого браузера, серьезное снижение общей производительности и сокращение продолжительности непрерывного функционирования системы от батареи. Естественно, все это уже будет заметно даже невооруженным глазом.

 

Почему увеличивается объем занимаемой памяти?

Одновременное открытие в браузере сразу 15 вкладок — сейчас не такое уж редкое событие. Бросали ли вы когда-нибудь в процессе работы взгляд на Диспетчер задач? На одном из моих тестовых компьютеров (оснащенном процессором Core 2 Duo с тактовой частотой 3 ГГц, оперативной памятью объемом 4 Гбайт и операционной системой Windows 7 SP1) браузер Internet Explorer 9 c 15 открытыми вкладками занимал 1056 Мбайт оперативной памяти. Под небольшое приложение был отдан 1 Гбайт памяти. Кроме того, эти 15 вкладок заставили IE9 создать девять процессов iexplore.exe, у каждого из которых было больше потоков (базовых процессов, которым ОС выделяет процессорное время) и дескрипторов (доступных ресурсов операционной системы), чем у любых других приложений или сервисов, выполняемых в системе. На более быстрых машинах, имеющих тонны памяти, такое поглощение ресурсов приводит к снижению устойчивости – все чаще регистрируются случаи задержки и аварийного завершения программ. На нетбуках, портативных компьютерах, старых настольных компьютерах, первом поколении ультрабуков и планшетных компьютерах наблюдается заметное снижение производительности.

Независимо от того, как вы это оцениваете, браузер является одним из самых крупных и интенсивных потребителей компьютерных ресурсов. Почему?

Прежде всего потому, что веб-браузер – это не программа для просмотра документов, а веб-сайт – не простой документ. Браузеры представляют собой сложную и развитую среду программирования. Технологии HTML5, JavaScript и Flash гораздо мощнее и запутаннее любого документа. Здесь выполняется код! Речь идет не о том, сколько процессорного времени и памяти понадобится тому или иному браузеру, а о том, какой из них оказывает меньшее воздействие на систему в целом.

— Увеличение потребления оперативной памяти приводит к тому, что Windows 7 начинает выгружать из памяти другие приложения, даже если памяти остается вполне достаточно. Страдает производительность операционной системы и приложений. Это не слишком отразится на процессорах Core i7 (или еще более мощных Bulldozer) второго поколения, которые устанавливаются в компьютеры с большим объемом памяти, однако в полной мере затронет устройства малой мощности, составляющие львиную долю потребительских и корпоративных аппаратных средств.

— Технология Windows 7 SuperFetch пытается заполнить всю доступную память страницами, обращение к которым осуществляется чаще всего. В результате ваши любимые приложения запускаются и работают быстрее. Если объем используемой браузером памяти увеличивается, Windows выгружает данные SuperFetch из памяти, и производительность других приложений страдает еще сильнее. Такая ситуация в равной степени характерна для всех машин, независимо от их спецификаций.

— Продолжительные паузы, возникающие при работе сборщика мусора и сборщика циклов, приводят к дальнейшему снижению общей производительности процессора.

— Повышается вероятность утечек. При этом браузер захватывает память, которую потом не в состоянии освободить даже при закрытии процесса. Для очистки памяти в таких случаях требуется перезагрузка Windows.

— Возникают предпосылки для снижения устойчивости работы, обусловленные чрезмерной буферизацией, плохой реакцией отдельных вкладок на действия пользователя и замиранием воспроизведения видео и аудио.

Чем больше памяти потребляет браузер, тем медленнее он работает. Кроме того, это негативно отражается на функционировании других приложений.

Большая нагрузка на оборудование приводит к уменьшению продолжительности работы ноутбуков от батареи. Учтите, что Chrome, Firefox и IE9 представляют собой простые 32-разрядные приложения. Они способны использовать не более 2 Гбайт оперативной памяти, что повышает вероятность возникновения сбоев и зависаний. Кстати, 64-разрядные версии несовместимы со многими модулями расширения.

Помимо безопасности, удобства эксплуатации, стабильности работы и совместимости, одним из главных факторов, влияющих на выбор браузера, я бы назвал характер использования им оперативной памяти. От этого зависят скорость, устойчивость и общая производительность ПК.

 

Какой браузер самый непритязательный?

Для определения характера использования памяти браузерами был подготовлен следующий сценарий:

• В тестировании принимают участие три компьютера. На двух из них установлена 32-разрядная операционная система Windows 7 SP1, а на третьем – 64-разрядная Windows 7 SP1. Результаты, продемонстрированные на всех трех ПК, усредняются.

• На всех браузерах запускаются базовые надстройки, созданные независимыми разработчиками, например Adobe Flash. Никакие дополнительные помощники и плагины не устанавливаются.

• В системе нет инструментов и служб, поставляемых независимыми разработчиками.

Какой из браузеров действительно самый быстрый?

 

Браузер готов к тестированию

Для тестирования каждого из браузеров были выбраны три различных теста:

• 1 вкладка Google;

• 5 вкладок: Google, Facebook (статический профиль), видеоплеер South Park Studios (видеоклип – поставлен на паузу), Lifehacker (статья) и Nvidia (страница драйверов);

• 15 вкладок: Google, Facebook (статический профиль), видеоплеер (видеоклип – поставлен на паузу), Lifehacker (статья), Nvidia (страница драйверов), Autoblog (статическая статья), Engadget (статическая статья), ITworld (статическая статья), PCWorld (статическая статья), The Escapist (видеоклип – поставлен на паузу), Joystiq (статическая статья), YouTube (видеоклип – поставлен на паузу), Cinemassacre (домашняя страница), Screen Rant (статическая статья) и Twitter (статический профиль).

Все вкладки открывались с интервалом в 5 с. На выбранных веб-сайтах размещено множество разновидностей контента: статические статьи в формате HTML, поисковые механизмы, видеоконтент, множественный динамический контент, сайты социальных сетей. В основной же своей массе сайты содержали статический контент. На Facebook был выбран профиль неактивного пользователя.

Анализ общего характера употребления памяти и чрезмерного потребления ресурсов Windows (дескрипторов, процессорного времени, потоков) проводился с помощью утилиты Process Explorer. После каждого теста машина перезагружалась, для того чтобы освободить всю заблокированную память.

Браузер IE9 сравнивался не только со стабильными версиями своих конкурентов, но и с рядом бета-версий и версий для разработчиков:

• Internet Explorer 9.0.8112 (окончательная версия);

• Firefox 10.0.1 (окончательная версия), Firefox 11 (бета-версия);

• Google Chrome 17.0.963.46 (окончательная версия), 18.0.1025.11 (бета-версия), 19.0.1036.7 (версия для разработчиков);

• Opera 11.61 (окончательная версия) 12.00 (альфа-версия).

 

Результаты тестирования

Какой из браузеров действительно самый быстрый?

 

В официальных стабильных версиях IE9 и Chrome поглощали много памяти в сценарии с 15 вкладками. (Думаю, что если число вкладок довести до 40 и более, объем потребляемой памяти вырастет еще существеннее.) Превзошел же всех Firefox 10. Он использовал всего половину (!) объема памяти, понадобившейся другим браузерам в этом сценарии. Если при использовании базовых ресурсов объем занимаемой браузером памяти находился на уровне 68 Мбайт, то после открытия пяти вкладок он увеличился до 218 Мбайт.

Какое влияние это окажет на производительность в реальных условиях? IE9 и Chrome выглядели весьма инертными. Переключение между вкладками осуществлялось с заметными задержками. Общая производительность системы и скорость реакции также упали. У Firefox видимой разницы в производительности мы не обнаружили.

А теперь перейдем к бета-версиям Opera, Firefox и Chrome.

 

Какой из браузеров действительно самый быстрый?

 

У бета-версии Firefox существенного увеличения производительности по сравнению с основной производственной версией при открытии одной или пяти вкладок мы не обнаружили, а при работе с 15 вкладками объем занимаемой памяти сократился на 70 Мбайт. Google Chrome также несколько улучшил результаты при открытии нескольких вкладок, но когда их число на экране достигло 15, объем памяти вырос до неприемлемой величины – 1084 Мбайт!

Бета-версия Opera испытала сложности с одним из тестовых сайтов. На пяти вкладках объем памяти, занимаемой программой, достиг 789 Мбайт, а после открытия 15 вкладок было занято уже 1112 Мбайт. А это значит, что бета-версии еще очень далеко до результатов, которые показывала версия 10.

Все браузеры, за исключением Firefox, продемонстрировали видимую задержку. Перемещаться по Интернету или работать с другими программами в таких условиях неудобно.

 

Какой из браузеров действительно самый быстрый?

 

При тестировании версии для разработчиков пальму первенства вновь завоевал браузер Firefox, сумевший еще сильнее повысить эффективность использования оперативной памяти. И хотя во время теста с 15 вкладками браузер на 5 с замер, он тем не менее сумел продемонстрировать лучшую общую производительность. Chrome вновь оказался самым тяжелым на подъем. В общей сложности программа поглотила 1118 Мбайт оперативной памяти. Недалеко от него ушла и версия Opera 12.

Становится совершенно ясно, что эталонные тесты вовсе не обязательно отражают реальное положение дел. А использование модулей расширения, предлагаемых независимыми разработчиками, наряду с влиянием операционной системы, фоновых задач, и многих других факторов, способно привести к тому, что перед нами предстанет совсем иная картина. Что касается тестов, описанных в данной статье, то они позволяют, по крайней мере, получить общее представление о браузерах и об использовании ими меньшего или большего объема памяти.

 

Заключение

Если вы никогда не открываете в браузере больше 5--10 вкладок, на которых одновременно отображаются сложные веб-страницы, то объем памяти, занимаемой браузером, не будет иметь для вас существенного значения. Если браузер занимает 50, 200 или 400 Мбайт оперативной памяти, в этом нет ничего страшного даже на маломощных машинах.

 

Какой из браузеров действительно самый быстрый?

 

Однако придется несладко тем, кто привык открывать сразу много вкладок в среде IE9, Chrome (во всех его ипостасях) и Opera (в бета-версии).

Проверку с честью выдержал только Firefox. Когда уже при открытии 15 вкладок объем занятой памяти достигает 1 Гбайт, торможение ощущается даже на быстрых машинах. Если на компьютере установлено 4, 8 или 16 Гбайт оперативной памяти, операционная система Windows и ее средства управления памятью быстро достигнут предела имеющихся ресурсов. Потоки и дескрипторы окажутся исчерпанными, страничный обмен замедлится, общая устойчивость упадет, а время реакции заметно увеличится.

Безусловным лидером наших тестов стал Firefox. Это единственный браузер, которого замедление практически не затронуло, и его с полным основанием можно рекомендовать как владельцам маломощных мобильных устройств, так и пользователям высокопроизводительных настольных компьютеров.