Многопроцессный режим в ночных сборках Firefox. Тесты производительности Asm.js и движка Servo

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

Дополнительно можно отметить несколько тестов производительности, демонстрирующих прогресс развития технологий Mozilla. Представлен первый публичный выпуск тестового пакета Massive, разработчики которого постарались сформировать набор тестов производительности, соответствующих сценариям реального применения технологии Asm.js. В частности, оценивается производительность в браузере преобазованного в JavaScript кода проектов Poppler, SQLite, Lua и Box2D. Результаты тестирования разных версий Firefox показали, что за два года производительность Asm.js возросла в 6 раз.

Кроме того, доступны результаты тестирования производительности экспериментального браузерного движка Servo, развиваемого проектом Mozilla в сотрудничестве с компанией Samsung. Движок написан на языке Rust и отличается поддержкой многопоточного рендеринга web-страниц, а также распараллеливанием операций с DOM (Document Object Model). Текущий браузерный движок Firefox не может в полной мере задействовать потенциал современных многоядерных систем из-за изначального использования однопоточных схем обработки контента. В частности, при обработке одной страницы однопоточным остается связанный с DOM (Document Object Model) внутренний API, функции формирования содержимого окна, парсинга HTML и выполнения JavaScript. Использование Rust позволяет разбить код DOM и рендеринга на более мелкие подзадачи, которые могут выполняться параллельно и более эффективно использовать ресурсы многоядерных CPU. Кроме эффективного распараллеливания операций, используемые в Rust технологии безопасного программирования позволяют кардинально поднять уровень безопасности, решив текущие проблемы с безопасностью.

Тестирование производительности Servo подтвердило его значительное превосходство над традиционным движком Gecko, даже при привязке Servo к одному CPU. В следующем году Mozilla не исключает возможность перевода на Servo продукты Firefox для Android и Firefox OS. Планов по переходу Firefox на Servo пока нет, но в 2015 году ожидается альфа-выпуск варианта Firefox на движке Servo. При этом интегрировать Servo в сторонние проекты можно уже сейчас, так как API/ABI уже в значительной степени стабилизировался.

Источник:
http://www.opennet.ru/opennews/art.shtml?num=41033

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>