The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

15.02.2017 12:31  В Chrome тестируют новый подход к компиляции JavaScript

Разработчики JavaScript-движка V8 объявили о начале тестирования упрощённой схемы компиляции JavaScript, основанной на применении интерпретатора Ignition и JIT-компилятора Turbofan для всего JavaScript, а не для специфичных ситуаций. Новый режим включен по умолчанию для контрольной группы пользователей веток Chrome Canary и Chrome Developer. Остальные могут включить новый режим, активировав опцию "Experimental JavaScript Compilation Pipeline" в "chrome:flags".

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

Вместо машинного кода Ignition использует байткод, выполняемый в регистровой виртуальной машине, который требует в 2-4 раза меньше памяти, а по скорости выполнения в реальных приложениях очень близок к неоптимизированному машинному коду. После формирования базового машинного кода для JIT, вступали в строй два дополнительных JIT-компилятора, которые генерировали оптимизированный код, учитывая накопленную статистику. Выбор того или иного оптимизирующего компилятора зависел от контекста, но Turbofan изначально развивался как будущая замена Crankshaft, по мере тестирования и стабилизации забирая на себя всё больше функций.

Новая схема подразумевает применение на первой стадии только интерпретатора с байткодом с подключением по мере выполнения кода JIT-компилятора Turbofan. Таким образом, полностью исключается фаза упреждающей генерации неоптимизированного машинного кода JIT-компилятром FullCodegen, а также удаляются привязки к старому JIT-компилятору Crankshaft и лишняя логика разветвлений. Ожидается, что изменение положительно скажется на производительности реальных JavaScript-приложений и позволит снизить расход памяти.

  1. Главная ссылка к новости (http://v8project.blogspot.ru/2...)
  2. OpenNews: Для WebKit реализован JIT-компилятор на основе наработок LLVM
  3. OpenNews: В Chrome появилась поддержка фоновой компиляции JavaScript
  4. OpenNews: В JavaScript-движок V8 добавлена поддержка WebAssembly
  5. OpenNews: В Chrome и движке V8 обеспечена поддержка спецификаций ECMAScript 6 и 7
  6. OpenNews: Представлен TurboFan, новый JIT-компилятор для JavaScript-движка V8
Лицензия: CC-BY
Тип: К сведению
Ключевые слова: turbofan, chrome, v8, pipeline
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, freehck (ok), 12:44, 15/02/2017 [ответить] [показать ветку] [···]    [к модератору]
  • +16 +/
    Значит, теперь JS будет выполняться ещё быстрее. Чудно.
    Пожелаем Хромовцам успеха.
     
     
  • 2.32, rshadow (ok), 19:12, 15/02/2017 [^] [ответить]    [к модератору]
  • –2 +/
    > Значит, теперь JS будет выполняться ещё быстрее. Чудно.
    > Пожелаем Хромовцам успеха.

    А тем временем мозилла все тормознее и тормознее...

    "На правах накидывальщика на вентилятор"


     
     
  • 3.35, Аноним (-), 19:23, 15/02/2017 [^] [ответить]    [к модератору]
  • +2 +/
    Вот нет, в последней вроде нарастание тормозов приостановилось, стало вроде чуть лучше. Сугубо личное видение.
     
     
  • 4.37, rico (ok), 20:51, 15/02/2017 [^] [ответить]    [к модератору]
  • +/
    Вы про многопоточный режим?
     
     
  • 5.39, rshadow (ok), 22:46, 15/02/2017 [^] [ответить]    [к модератору]
  • +/
    Скорее всего. Он действительно сделал быстрее и отзывчевее интерфейс.
    Только вот js движек от этого лучше не стал.
     
     
  • 6.42, Аноним (-), 00:55, 16/02/2017 [^] [ответить]     [к модератору]  
  • +/
    Рекомендую 52-ю версию FF Разница и улучшения поразительны Особо тем у кого оп... весь текст скрыт [показать]
     
     
  • 7.47, Имя (?), 01:44, 16/02/2017 [^] [ответить]    [к модератору]  
  • –2 +/
    > не нравиться... становиться... сталкиваються

    http://tsya.ru/
    Неужели это так сложно?

     
     
  • 8.51, vdb (?), 03:27, 16/02/2017 [^] [ответить]    [к модератору]  
  • +/
    «Що вони роблять? -- Лежать.» Это не лечится.
     
  • 2.53, Lain_13 (ok), 18:18, 16/02/2017 [^] [ответить]     [к модератору]  
  • +/
    Не совсем так Смысл в том, что они выкинули черновую компиляцию байткода на мор... весь текст скрыт [показать]
     
  • 2.55, Sen (?), 13:52, 22/02/2017 [^] [ответить]    [к модератору]  
  • +/
    ошибочка, просто вернутся к нормальному интерпретатору, а всё требующее быстродействия будут пихать в NaCl;)
     
  • 1.2, Аноним (-), 13:02, 15/02/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +3 +/
    ох и отхлебнем хаках из чаши с новой архитектурой.
     
     
  • 2.31, rshadow (ok), 19:11, 15/02/2017 [^] [ответить]    [к модератору]  
  • +2 +/
    Интерпритатор же координально не меняется. Все должно быть нормально.

    А любители хаков должны страдать, да.

     
  • 1.3, username (??), 13:08, 15/02/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    Регистровой, ну вот, опять..
     
     
  • 2.6, Crazy Alex (ok), 13:20, 15/02/2017 [^] [ответить]    [к модератору]  
  • +/
    И за что такая нелюбовь?
     
  • 2.21, Аноним (-), 16:10, 15/02/2017 [^] [ответить]    [к модератору]  
  • +/
    регистровая лучше стековой.
     
     
  • 3.48, Аноним (-), 02:00, 16/02/2017 [^] [ответить]    [к модератору]  
  • +/
    да да, мы уже видели .net и jvm
     
  • 1.10, Shichael Migorin (?), 14:07, 15/02/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –3 +/
    Спасибо гуглу за то что действительно развивают свой браузер а не пихают туда всякую фигню, создавая видимость работы
     
     
  • 2.13, Нониус (?), 14:22, 15/02/2017 [^] [ответить]     [к модератору]  
  • +3 +/
    Ну да, с мобильника анонимно зайти можно Подминают как тот трактор всех ... весь текст скрыт [показать]
     
     
  • 3.14, Нониус (?), 14:27, 15/02/2017 [^] [ответить]    [к модератору]  
  • +/
    Модеры, вы дети.
    Научитесь жить не категориями.
     
  • 3.33, rshadow (ok), 19:16, 15/02/2017 [^] [ответить]     [к модератору]  
  • +/
    Дык смысл прокси в браузере если ДНС и все остальное в открытую ходит Рутуй тел... весь текст скрыт [показать]
     
     
  • 4.43, Crazy Alex (ok), 01:21, 16/02/2017 [^] [ответить]    [к модератору]  
  • +/
    Смысл в том, что сайт вместо настоящего IP что-то левое видит. Ваш К.О.
     
  • 1.24, Aleksdem (ok), 16:52, 15/02/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Убрали бы эту бесовщину совсем и пусть делают нормальные сайты, не требующие гигабайты памяти при открытии главной страницы. :)
     
     
  • 2.27, Аноним (-), 17:32, 15/02/2017 [^] [ответить]     [к модератору]  
  • +4 +/
    Зачем ускорять интерпретаторы Надо наоборот их замедлять, чтобы снова back to 7... весь текст скрыт [показать]
     
     
  • 3.28, Aleksdem (ok), 18:09, 15/02/2017 [^] [ответить]     [к модератору]  
  • –1 +/
    Пусть и ретроград, но как-то не улыбается покупать новый комп только потому, что... весь текст скрыт [показать]
     
     
  • 4.30, Аноним (-), 18:51, 15/02/2017 [^] [ответить]    [к модератору]  
  • +5 +/
    > Хотят плевать на оптимизацию - ок, но почему за мой счёт то?

    В новости пишется, что как раз оптимизируют. Но и тут выскочил ты -- весь такой недовольный. Видите-ли, держаться он там должен.

     
  • 4.36, Отражение луны (ok), 20:41, 15/02/2017 [^] [ответить]     [к модератору]  
  • +5 +/
    Ты видишь проблему в том месте, где она отсутствует Яваскрипт быстр, его компил... весь текст скрыт [показать]
     
     
  • 5.44, Crazy Alex (ok), 01:25, 16/02/2017 [^] [ответить]     [к модератору]  
  • +/
    Если б не было бы в браузере JS - DOM API и кучи хуков, с ним связанных, тоже не... весь текст скрыт [показать]
     
     
  • 6.52, Аноним (-), 14:23, 16/02/2017 [^] [ответить]    [к модератору]  
  • +/
    > Если б не было бы в браузере JS

    Давай сразу к первоисточнику. Если бы не было вселенной, то никаких проблем бы не было сейчас с тормозными браузерами.

     
  • 3.29, Аноним (-), 18:10, 15/02/2017 [^] [ответить]    [к модератору]  
  • +3 +/
    И я бы не сказал, что она хреновая.
     
  • 2.34, rshadow (ok), 19:19, 15/02/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Дык давно такое есть. Сайты называются: "книги", "журналы", "газеты". Пользуйся на здоровье. Потребление оперативной памяти и проца на компе = 0.
     
     
  • 3.45, Crazy Alex (ok), 01:26, 16/02/2017 [^] [ответить]    [к модератору]  
  • +/
    Ты перепутал "документ, а не программу" с "хренью, из которой удобно информацию не извлечёшь".
     
  • 1.38, Аноним (-), 21:08, 15/02/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Фаерфокс бы этим занялся.
     
     
  • 2.40, Анончик (?), 23:30, 15/02/2017 [^] [ответить]    [к модератору]  
  • +/
    >Фаерфокс бы этим занялся.

    Фаерфокс занят хромированием.

     
     
  • 3.41, Аноним (-), 00:12, 16/02/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    У нас в проекте имя проекта могу назвать по требованию - оно достаточно популяр... весь текст скрыт [показать]
     
     
  • 4.46, Crazy Alex (ok), 01:27, 16/02/2017 [^] [ответить]    [к модератору]  
  • +/
    Так что же за проект?
     
  • 4.49, жульмере хешельбекельме (?), 02:30, 16/02/2017 [^] [ответить]    [к модератору]  
  • +/
    Все правильно делаете, у нас точной такой же подход!
     
  • 4.54, abi (?), 14:42, 17/02/2017 [^] [ответить]    [к модератору]  
  • –2 +/
    Спасибо, что даёте возможность работать без наносной дёргающейся шелухи хотя бы пользователям FF
     
  • 3.50, жульмере хешельбекельме (?), 02:32, 16/02/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Яичек
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2019 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor