Работа по улучшению мобильного потребления памяти в двигателе V8 JavaScript, Google разработала зажигания, интерпретатор JavaScript, чтобы сократить накладные расходы и повысить выполнение сценариев. Google видит технологию, предлагая другие возможности для увеличения производительности веб-а.

Через Ignition, V8 компилирует функции JavaScript в краткой байт-кода, что это от 25 до 50 процентов размер эквивалентной базовой линии машинного кода, Росс Макилрой, инженер Google для программного обеспечения Android, сказал. «Этот байт-код затем выполняется с помощью интерпретатора высокой производительности, что дает скорость выполнения на реальных сайтах, близких к кода, сформированного с помощью существующего базового компилятора V8 в.»
Добавление зажигания в конвейер выполнения сценария открывает возможности за сокращения накладных расходов V8 памяти, в соответствии с Макилрой. «Трубопровод зажигания был разработан, чтобы позволить нам принимать более взвешенные решения о том, когда для выполнения и оптимизации кода для ускорения загрузки веб-страниц и уменьшить Jank и сделать обмен между различными компонентами V8 еще более эффективным», сказал он.

V8 и другие двигатели рычаги JIT компиляции сценария в машинный код для выполнения целей. С V8, конвейер выполнения сценария есть условия, требующие сложного механизма для переключения между базовым компилятором и двумя другими оптимизирующих компиляторах: Коленвал и турбовентиляторных. С помощью этого процесса, «JiTed» машинный код может потреблять много памяти, даже если код выполняется только один раз. Зажигание, который может заменить базовый компилятор V8, совершает код с меньшим количеством накладных расходов памяти и прокладывает путь для более простого трубопровода выполнения сценария, пояснил Макилрой.
Переводчик использует более низкого уровня, не зависящие от архитектуры инструкции макро-сборки из турбовентиляторных для создания обработчиков байт-код для ОП-кодов. Турбовентиляторном компилирует инструкции для целевой архитектуры, обеспечивая выбор команд низкого уровня и распределения машины регистра. «Это приводит к высоко оптимизированного кода интерпретатора, который может выполнять инструкции байткодом и взаимодействовать с остальной частью виртуальной машины V8 в низкой накладные расходы таким образом, с минимальным количеством новых машин добавляется к кодовую», сказал Макилрой.

Android устройств с 512 Мб оперативной памяти или меньше и работает браузер Chrome 53 должен включить зажигание. «Результаты первых экспериментов в области показывают, что Зажигание уменьшает память каждой вкладки Chrome примерно на 5 процентов», отметил Макилрой.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *