-> ->

Firefox получит новый JavaScript-двигатель IonMonkey и графический двигатель Azure

Firefox Logo

Разработчики из Mozilla продолжают стараться продвинуть производительность браузера Firefox на новый уровень, для этого будет создан новый JavaScript-двигатель под названием IonMonkey и графический двигатель Azure.

Новый JS-двигатель IonMonkey будет содержать в себе улучшенную сборку мусора обрабатываемого JavaScript-кода, тем самым будет оптимизирована работа памяти, также IonMonkey будет являться JIT-компилятором. Также как и Crankshaft, используемый в Google Chrome, IonMonkey позволит добиться дополнительной оптимизации, такой как подстановка функций, удаление мёртвого (неиспользуемого) кода. На данный момент IonMonkey находится в стадии проектирования и проводятся эксперименты, целью которых является выявление наиболее востребованных функций и возможностей.

Графический двигатель Azure должен заменить использование Cairo, который отчасти уже исчерпал свои возможности в улучшении производительности отрисовки контента в браузере Firefox. Azure должен продолжить движение в достижении цели увеличения производительности.

По умолчанию Firefox выполняет отрисовку следующими этапами: первоначально контент для вывода подразделяется на отдельные независимые слои, каждый из слоёв отрисовывается с помощью Cairo, данный двигатель использует доступный графический 2D API в исполняемой операционной системе, при этом если доступно аппаратное ускорение - оно будет задействовано, на данный момент аппаратное ускорение доступно на Windows Vista и Windows 7, но в компании Mozilla хотят расширить поддержку аппаратного ускорения на другие платформы, включая мобильные. После отрисовки слои собираются вместе, используя доступный 3D API (OpenGL или Direct3D) или Cairo и результат выводится на экран.

Из-за различий в используемом типе данных Cairo и Direct2D API при отрисовке графики приходится для вызова функций приводить результаты из чисел с фиксированной точкой к числам с плавающей точкой и обратно, тем самым увеличивая бесполезную нагрузку, дополнительно к этому в Cairo при работе с посторонними API добавляются новые издержки, что в конечном счёте ухудшает производительность при работе с графикой.

В Mozilla решили удалить эти ненужные преобразования и отслеживания состояния. По замыслам новый двигатель Azure должен быть достаточно близок к Direct2D, но при этом должен позволять реализовать функционал OpenGL и Direct3D 9.

Проводимые эксперименты уже показали, что Azure оказался быстрее чем использование Cairo.

Всё же Cairo останется в браузере Firefox на тот случай, если Azure будет нестабильным или не оправдает возложенных надежд.

Поставить рейтинг:(Рейтинг: 2.86, оценок: 104)
 
Поделитесь новостью:

New! Полная статистика популярности браузеров по Рунету и миру. Системы сбора статистики LiveInternet, OpenStat, StatCounter в одном месте. Данные по всем популярным браузерам, таким как Google Chrome, Mozilla Firefox, Яндекс.Браузер, Opera, Microsoft Internet Explorer, а также альтернативным браузерам.

Возможно, Вам будут интересны новости:
События в тоже время:

Комментарии

Комментариев пока нет

Чтобы оставить комментарий - зарегистрируйтесь или авторизуйтесь через любимый сервис (ВКонтакте, Одноклассники, Twitter и др.) с помощью OpenID.