Google недавно выпустил Chrome 91 в стабильной версии, и он обеспечивает производительность на 23% выше благодаря изменениям, упомянутым в сообщении.
Google недавно вышел Chrome 91 на стабильном канале. В обновлении внесено множество изменений, в том числе обновленные элементы управления формами, поддержка режима рабочего стола по умолчанию на устройствах с большим экраном, улучшения API доступа к файловой системе и многое другое. Обновление также содержит множество улучшений производительности, и Google теперь сообщил, что последнее обновление делает Chrome на 23% быстрее, чем предыдущая версия.
В недавний пост на Блог ChromeМенеджер по продуктам Chrome Томас Наттестад сообщил, что Chrome 91 "теперь на 23% быстрее с запуском новый компилятор Sparkplug и короткие встроенные вызовы, экономя более 17 лет процессорного времени наших пользователей каждый день!" В сообщении объясняется, что Sparkplug — это новый компилятор JavaScript, который «заполняет пробел между необходимостью быстрого начала выполнения и оптимизацией кода для достижения максимальной производительности».
С другой стороны, короткие встроенные вызовы оптимизируют «куда в памяти мы помещаем сгенерированный код, чтобы избежать непрямых переходов при вызове функций».Движок Chrome V8 включает в себя несколько компиляторов, которые идут на разные компромиссы на разных этапах выполнения JavaScript. Новый компилятор свечей зажигания обеспечивает баланс между двухуровневой системой компилятора двигателя — зажигания и турбовентилятора. -- для генерации собственного машинного кода без зависимости от информации, собранной при выполнении JavaScript код. Благодаря этому, это «начинает выполняться быстро, при этом генерируя относительно быстрый код», тем самым улучшая производительность.
Короткие встроенные функции — это новый механизм, который помогает движку V8 оптимизировать расположение сгенерированного кода в памяти. «Когда V8 генерирует код, специфичный для процессора, из JavaScript, он помещает этот код в память. Этот сгенерированный код часто вызывает встроенные функции, которые представляют собой небольшие фрагменты кода для обработки общих процедур. --все, от базовых операций, таких как добавление двух переменных, до полноценных функций в стандарте JavaScript. библиотека. Для некоторых ЦП вызов функций, находящихся дальше от сгенерированного кода, может привести к сбою внутренней оптимизации ЦП (например, логики прогнозирования ветвей). Решением этой проблемы является копирование встроенных функций в ту же область памяти, что и сгенерированный код». пост добавляет. Далее отмечается, что это изменение должно улучшить производительность Chrome на чипе Apple M1.
Чтобы узнать больше об этих улучшениях производительности, посетите Chrome Сообщение в блоге V8.