Opera наверстала отставание от других браузеров Андрей Письменный
Opera наверстала отставание от других браузеров
Андрей Письменный
Бета-версия браузера Opera 10.50 снабжена совершенно новым интерпретатором языка JavaScript. Он называется Carakan и работает значительно быстрее, чем прежние версии. Это означает, что Opera, наконец, догнала прочие браузеры по производительности JavaScript, и позади остался только Internet Explorer (впрочем, скоро исправят и его).
Carakan использует JIT-компиляцию для того, чтобы ускорить исполнение критичных участков кода. Судя по тестам, это позволило получить более чем десятикратный выигрыш в производительности по сравнению с движком Futhark, использовавшимся в прошлой версии Opera.
К примеру, на прохождение теста Sunspider у Futhark в среднем уходит 5691 миллисекунд, тогда как Carakan справляется за 473 мс. Похожие результаты показывает и тест V8. Обратите внимание на то, что Sunspider измеряет время исполнения (то есть, чем меньше, тем лучше), а V8 отображает результаты в виде очков (чем больше результат, тем лучше).
Такая скорость ставит Carakan в один ряд с другими современными движками JavaScript. Он работает быстрее, чем интерпретатор Tracemonkey, использующийся в Firefox, и лишь слегка не дотягивает до показателей V8 из браузера Chrome и движка WebKit, работающего в Safari.
В Opera Software решили начать разработку Carakan осенью 2008 года — как раз тогда вышла первая версия Google Chrome. Не исключено, что именно впечатляющая скорость V8 подтолкнула авторов других браузеров к тому, чтобы поучаствовать в борьбе за ускорение JavaScript. Эта тенденция как нельзя более выгодна для авторов веб-приложений — ведь чем быстрее работает JavaScript, тем более сложные программы они могут создавать.
Об особенностях нового интерпретатора Javascript «Компьютерре-Онлайн» рассказал Йенс Линдстрём (Jens Lindstrцm), ведущий разработчик Carakan.
— Как шла разработка Carakan?
— Движок Carakan создан небольшой командой инженеров, которые до этого совместно разрабатывали различные компоненты браузера Opera, в том числе движок ECMAScript. Команда насчитывала от трёх до пяти разработчиков, которые работали над проектом всё время, и примерно столько же инженеров. У всех у них за плечами был огромный опыт создания JavaScript-движков, поэтому у нас не было необходимости привлекать кого-то извне.
— Как устроен JIT-компилятор Javascript, который разработали в Opera Software?
— JIT-компилятор ядра Carakan транслирует все ECMAScript-функции в машинный код. Однако не весь код, а только его пиковые точки — то есть самые часто вызываемые и долго исполняемые функции. Перед тем, как обнаружить эти пиковые точки и активировать JIT-компилятор, Carakan запускает скрипты в кроссплатформенном бинарном движке, а сам в это время анализирует запущенный код, чтобы JIT-компилятор смог собрать его оптимизированную версию.
— Чем Carakan отличается от V8 и Tracemonkey?
JIT-компилятор Tracemonkey в чём-то похож на Carakan: в том, что он генерирует машинный код для обнаруженных пиковых точек, и в том, что использует бинарный интерпретатор для сбора информации, необходимой для JIT. С другой стороны, в Tracemonkey используется совсем другой подход — как для определения тех участков кода, которые должны быть оптимизированы, так и для непосредственной оптимизации. Что касается движка V8, то я не очень хорошо с ним знаком, чтобы авторитетно говорить об отличиях и сходстве.
— Подходит ли Carakan для использования на мобильных устройствах?
— Пока JIT-компилятор поддерживает только процессоры x86, но изначально разрабатывался для портирования на процессоры других архитектур. Например, если генерируемый код независим от кода, созданного для фактически используемого процессора, то применяется распределитель регистров. Для этого нужно только знать основные характеристики, такие как количество доступных регистров.
— Тестировали ли его совместимость с существующими веб-приложениями?
— Да, разумеется. Команда, работающая над Carakan, включала нескольких опытных инженеров, которые работали не только над разработкой тестов на соответствие спецификациям ECMAScript, но и тестированием на совместимость со многими веб-приложениями, а также изучением возможных проблем, выявленных в ходе такого тестирования. Большинство тестов были сделаны с включённым JIT-компилятором. С тех пор это режим тестирования по умолчанию.
К оглавлению
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
А как насчет других браузеров?
А как насчет других браузеров? Открывая форму в Internet Explorer 7 – браузере с нулевой поддержкой CSS3, – мы видим вполне приемлемую рабочую форму (рис. 6.15). Это замечательно! Все улучшения, добавленные свойствами CSS3, были проигнорированы; остался скелет формы, работающий так, как
Вещь дня: фотоаппарат Pentax I-10 Андрей Письменный
Вещь дня: фотоаппарат Pentax I-10 Андрей Письменный Опубликовано 29 июля 2010 года Первая мысль, приходящая в голову при виде этого фотоаппарата — «ой, какая маленькая и симпатичная штучка!». Скорее всего, дизайнеры, работавшие над его наружностью
Как спасти Microsoft Андрей Письменный
Как спасти Microsoft Андрей Письменный Опубликовано 11 августа 2010 года За последние десять лет в Microsoft создали много хорошего, хотя и глупостей наделали порядочно. С финансами у корпорации всё в порядке, и хоть она пока не теряет деньги, с каждым провалом
"Нивал" и 1С о выставке E3 2010 Андрей Письменный
"Нивал" и 1С о выставке E3 2010 Андрей Письменный Опубликовано 22 июня 2010 года На игровой выставке E3 2010 было объявлено несколько интереснейших проектов, среди которых – новый Xbox 360 и Microsoft Kinect, Nintendo 3DS, а также множество игр. Представители российских
Microsoft: что пошло не так Андрей Письменный
Microsoft: что пошло не так Андрей Письменный Опубликовано 05 июля 2010 года В 2007 году эссе Пола Грэма о том, что «Microsoft мертва» наделало немало шума. Может показаться, что он ошибался, ведь компания и по сей день вполне жива и весьма прибыльна, но Грэм имел в
Популярность Opera Mini растёт Андрей Письменный
Популярность Opera Mini растёт Андрей Письменный Компания Opera Software опубликовала отчёт о мобильном интернете и успехах Opera Mini. В отчёте сообщается, что iPhone стал третьим по популярности мобильным телефоном среди пользователей Opera Mini уже через две недели после
Последнее китайское предупреждение Андрей Письменный
Последнее китайское предупреждение Андрей Письменный Конфликт между Google и китайскими властями подходит к своему логическому завершению. Лицензия на работу поисковика в Китае истекает, и если ни одна из сторон не пойдёт на попятную, то китайское подразделение Google
Карманные магазины Андрей Письменный
Карманные магазины Андрей Письменный Телефоны Nokia, Google, Microsoft и Samsung вслед за iPhone обзавелись встроенными магазинами приложений. С одной стороны, такие магазины выгодны и для пользователей, и для разработчиков. С другой — они ограничивают возможности
Окажется ли в плюсе Google+ Андрей Письменный
Окажется ли в плюсе Google+ Андрей Письменный Опубликовано 08 июля 2011 года Ещё недавно слова Google и «социальные сети», встреченные в одном предложении, вызывали улыбку. Слишком уж часто эта компания делала неловкие попытки запустить собственную
Пиратский клаудкомпьютинг Андрей Письменный
Пиратский клаудкомпьютинг Андрей Письменный Опубликовано 11 мая 2010 года Технология BitTorrent, изначально предназначенная для разделения нагрузки при скачивании файла, ныне широко востребована пиратами. Но создатели BitTorrent в своё время решили не
Обзор браузера Opera Mobile 10.1 для Google Android Андрей Письменный
Обзор браузера Opera Mobile 10.1 для Google Android Андрей Письменный Опубликовано 12 ноября 2010 года Известно, что хотя бы одна из версий браузера Opera способна работать едва ли не на каждом современном телефоне. Однако не все версии равны: Opera Mini, в отличие от Opera
E3 2010: Десятка лучших игр Андрей Письменный
E3 2010: Десятка лучших игр Андрей Письменный Опубликовано 16 июня 2010 года The Legend of Zelda: Skyward Sword Приключенческий экшен-сериал The Legend of Zelda не останется без продолжения, пообещал легендарный гейм-дизайнер Cигеру Миямото. Выступая на
Opera 10.50: оперативный релиз Андрей Крупин
Opera 10.50: оперативный релиз Андрей Крупин Сегодня разработчики Opera Software с присущим им духом новаторства и прогрессивности в очередной раз отметились на рынке программного обеспечения, объявив о выпуске финальной редакции браузера Opera 10.50. Специалистам потребовалось всего
Opera с возу, но Сети не легче: чем аукнется усыхание разнообразия браузеров? Евгений Золотов
Opera с возу, но Сети не легче: чем аукнется усыхание разнообразия браузеров? Евгений Золотов Опубликовано 20 февраля 2013 Если вы застали Веб начала нулевых, то, конечно, помните кошмарную технологическую диспропорцию, сформировавшуюся тогда. Веб-браузеров уже было
Opera наверстала отставание от других браузеров
Opera наверстала отставание от других браузеров Автор: Андрей ПисьменныйОпубликовано 22 марта 2010 годаБета-версия браузера Opera 10.50 снабжена совершенно новым интерпретатором языка JavaScript. Он называется Carakan и работает значительно быстрее, чем прежние версии. Это означает, что