Google продолжает искать пути увеличения быстродействия браузера Chrome, и заодно исправляет различные ошибки.
В версии Chrome Beta 33.0.1750.91 удалось устранить множество ошибок, что впрочем происходит в каждом релизе браузера. Но, что самое главное, был использован новый фоновый алгоритм компиляции JS-кода, это нововведение доступно как в настольной, так и мобильной версии браузера.
Как известно, V8, отвечающий за выполнение JavaScript-кода, работает в несколько проходов, в первую фазу всё внимание уделяется скорости обработки JavaScript, после этого в ход вступает специальный компилятор Crankshaft, он используется для оптимизации наиболее часто вызываемых кусков кода, этот процесс занимает больше времени нежели первая фаза, но и результат - оптимизированный код, а значит и быстрое выполнение.
До сих пор V8 мог только проводить оптимизацию JavaScript-кода и только затем его выполнение, это может приводить к подвисаниям, особенно если приложение ресурсоёмкое (очень актуально для html5-игр, где подтормаживания могут привести к пропуску кадров и неслабому дискомфорту для пользователя).
Лучше всего выполнение веб-приложения стоит отобразить на графике, где Вы можете заметить как оптимизация перед выполнением может грозить паузой в 600мс:
Это означает, что мы увидим "подмерзание" интерфейса веб-приложения на 600мс и будем ожидать выполнения операции, а если таких операций будет много - взаимодействие покажется адом.
А теперь разработчики продемонстрируют параллельную компиляцию JS-кода наряду с выполнением приложения, это позволяет продолжить выполнение команд пользователя и обеспечить более плавное взаимодействие:
Для Google это лишь ещё один маленький шаг к самому быстрому браузеру (которым он и является во многих операциях), для многих пользователей - это новый уровень удобства при использовании повседневных веб-приложений.