В ночных сборках 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