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, 12:44, 15/02/2017 [ответить] [смотреть все]
  • +16 +/
    Значит, теперь JS будет выполняться ещё быстрее. Чудно.
    Пожелаем Хромовцам успеха.
     
     
  • 2.32, rshadow, 19:12, 15/02/2017 [^] [ответить] [смотреть все] [показать ветку]
  • –2 +/
    А тем временем мозилла все тормознее и тормознее На правах накидывальщика на... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.35, Аноним, 19:23, 15/02/2017 [^] [ответить] [смотреть все]  
  • +2 +/
    Вот нет, в последней вроде нарастание тормозов приостановилось, стало вроде чуть... весь текст скрыт [показать]
     
     
  • 4.37, rico, 20:51, 15/02/2017 [^] [ответить] [смотреть все]  
  • +/
    Вы про многопоточный режим?
     
     
  • 5.39, rshadow, 22:46, 15/02/2017 [^] [ответить] [смотреть все]  
  • +/
    Скорее всего Он действительно сделал быстрее и отзывчевее интерфейс Только во... весь текст скрыт [показать]
     
     
  • 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, 18:18, 16/02/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Не совсем так Смысл в том, что они выкинули черновую компиляцию байткода на мор... весь текст скрыт [показать] [показать ветку]
     
  • 2.55, Sen, 13:52, 22/02/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    ошибочка, просто вернутся к нормальному интерпретатору, а всё требующее быстроде... весь текст скрыт [показать] [показать ветку]
     
  • 1.2, Аноним, 13:02, 15/02/2017 [ответить] [смотреть все]  
  • +3 +/
    ох и отхлебнем хаках из чаши с новой архитектурой.
     
     
  • 2.31, rshadow, 19:11, 15/02/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +2 +/
    Интерпритатор же координально не меняется Все должно быть нормально А любител... весь текст скрыт [показать] [показать ветку]
     
  • 1.3, username, 13:08, 15/02/2017 [ответить] [смотреть все]  
  • –2 +/
    Регистровой, ну вот, опять..
     
     
  • 2.6, Crazy Alex, 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, 19:16, 15/02/2017 [^] [ответить] [смотреть все]  
  • +/
    Дык смысл прокси в браузере если ДНС и все остальное в открытую ходит Рутуй тел... весь текст скрыт [показать]
     
     
  • 4.43, Crazy Alex, 01:21, 16/02/2017 [^] [ответить] [смотреть все]  
  • +/
    Смысл в том, что сайт вместо настоящего IP что-то левое видит. Ваш К.О.
     
  • 1.24, Aleksdem, 16:52, 15/02/2017 [ответить] [смотреть все]  
  • –1 +/
    Убрали бы эту бесовщину совсем и пусть делают нормальные сайты, не требующие гигабайты памяти при открытии главной страницы. :)
     
     
  • 2.27, Аноним, 17:32, 15/02/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +4 +/
    Зачем ускорять интерпретаторы Надо наоборот их замедлять, чтобы снова back to 7... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.28, Aleksdem, 18:09, 15/02/2017 [^] [ответить] [смотреть все]  
  • –1 +/
    Пусть и ретроград, но как-то не улыбается покупать новый комп только потому, что... весь текст скрыт [показать]
     
     
  • 4.30, Аноним, 18:51, 15/02/2017 [^] [ответить] [смотреть все]  
  • +5 +/
    В новости пишется, что как раз оптимизируют Но и тут выскочил ты -- весь такой ... весь текст скрыт [показать]
     
  • 4.36, Отражение луны, 20:41, 15/02/2017 [^] [ответить] [смотреть все]  
  • +5 +/
    Ты видишь проблему в том месте, где она отсутствует Яваскрипт быстр, его компил... весь текст скрыт [показать]
     
     
  • 5.44, Crazy Alex, 01:25, 16/02/2017 [^] [ответить] [смотреть все]  
  • +/
    Если б не было бы в браузере JS - DOM API и кучи хуков, с ним связанных, тоже не... весь текст скрыт [показать]
     
     
  • 6.52, Аноним, 14:23, 16/02/2017 [^] [ответить] [смотреть все]  
  • +/
    Давай сразу к первоисточнику Если бы не было вселенной, то никаких проблем бы н... весь текст скрыт [показать]
     
  • 3.29, Аноним, 18:10, 15/02/2017 [^] [ответить] [смотреть все]  
  • +3 +/
    И я бы не сказал, что она хреновая.
     
  • 2.34, rshadow, 19:19, 15/02/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Дык давно такое есть Сайты называются книги , журналы , газеты Пользуйся ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.45, Crazy Alex, 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, 01:27, 16/02/2017 [^] [ответить] [смотреть все]  
  • +/
    Так что же за проект?
     
  • 4.49, жульмере хешельбекельме, 02:30, 16/02/2017 [^] [ответить] [смотреть все]  
  • +/
    Все правильно делаете, у нас точной такой же подход!
     
  • 4.54, abi, 14:42, 17/02/2017 [^] [ответить] [смотреть все]  
  • –2 +/
    Спасибо, что даёте возможность работать без наносной дёргающейся шелухи хотя бы ... весь текст скрыт [показать]
     
  • 3.50, жульмере хешельбекельме, 02:32, 16/02/2017 [^] [ответить] [смотреть все]  
  • +1 +/
    Яичек
     

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


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