The OpenNET Project / Index page

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

14.02.2014 11:54  В Chrome появилась поддержка фоновой компиляции JavaScript

Разработчики из компании Google сообщили о добавлении в JavaScript-движок V8 поддержки фоновой компиляции JavaScript, которая позволит избежать появления задержек в процессе выполнения web-приложений и положительно повлияет на отзывчивость. Представленное улучшение уже доступно для тестирования в бета-сборках Chrome, Chrome для Android и Chromium.

В V8 применяется техника адаптивной JIT-компиляции. Так как некоторые виды оптимизации требуют накопления статистики и расходуют значительные процессорные ресурсы, глубокая оптимизация выполняется только для наиболее востребованных и часто выполняемых блоков кода (например, математические операции, цикличная обработка данных, рекурсивные вызовы). Редко используемый код и код, который только начал выполняться, компилируется по упрощённой схеме. До сих пор основной проблемой подобного подхода было то, что стадия оптимизирующей компиляции инициировалось в непредсказуемый для выполняемого web-приложения момент и приводила к возникновению задержек из-за приостановки выполнения кода до завершения компиляции очередного блока. В некоторых ситуациях задержки были вполне ощутимы и достигали 600 мс.

В новой версии V8 фаза глубокой оптимизирующей компиляции осуществляется в параллельном потоке, без прерывания процесса выполнения JavaScript-кода. Во время компиляции код продолжает выполняться с использованием базовых оптимизаций, а после готовности более эффективного кода, переключается на полностью оптимизированный вариант. Исключение задержек положительно повлияло на производительность сложных ресурсоёмких JavaScript-проектов. Например, показатели прохождения теста Mandreel, оценивающего скорость выполнения JavaScript-порта движка симуляции физических процессов Bullet, улучшились на 27%.



  1. Главная ссылка к новости (http://blog.chromium.org/2014/...)
  2. OpenNews: В движке V8 появилась новая подсистема JIT-компиляции JavaScript-кода
  3. OpenNews: Открыт код Duetto, системы для запуска в web-браузере проектов на языке C++
  4. OpenNews: Firefox 18 перейдёт на IonMonkey, JIT-компилятор нового поколения
  5. OpenNews: Взгляд на производительность JavaScript от одного из разработчиков Java
  6. OpenNews: Новые оптимизации в Firefox сократили разрыв в производительности JavaScript и компилируемых языков
Лицензия: CC-BY
Тип: К сведению
Ключевые слова: javascript, v8, chrome, jit
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, MPEG LA, 12:05, 14/02/2014 [ответить] [смотреть все]
  • –4 +/
    когда они asm.js добавят?
     
     
  • 2.3, Аноним, 12:15, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]
  • +1 +/
    Оно у них и так работает asm js на том же V8 будет выполняться быстрее иного жа... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.8, Lain_13, 14:29, 14/02/2014 [^] [ответить] [смотреть все]  
  • +/
    А на сколько он при этом близок к бинарнику, собранному из того же кода, из кото... весь текст скрыт [показать]
     
     
  • 4.41, inferrna, 16:15, 15/02/2014 [^] [ответить] [смотреть все]  
  • +/
    По потреблению памяти он всё так же далёк, смею вас уверить.
     
     
  • 5.43, Lain_13, 21:02, 15/02/2014 [^] [ответить] [смотреть все]  
  • +/
    Может тему менять не будем Тут говорилось о скорости На занимаемую память личн... весь текст скрыт [показать]
     
  • 3.30, Аноним, 20:46, 14/02/2014 [^] [ответить] [смотреть все]  
  • –2 +/
    К сожалению, проблему обычного asm решить так и не удалось Когда кул-хацкер нач... весь текст скрыт [показать]
     
  • 3.33, MPEG LA, 00:10, 15/02/2014 [^] [ответить] [смотреть все]  
  • +/
    а мужики-то и не знали они внесли некие оптимизации, и таки да, скорость выполн... весь текст скрыт [показать]
     
  • 3.45, анон, 15:02, 16/02/2014 [^] [ответить] [смотреть все]  
  • +1 +/
    несёшь фигню с каких это пор вот это function sum a, b a a 124 0 ... весь текст скрыт [показать]
     
     
  • 4.46, arisu, 15:08, 16/02/2014 [^] [ответить] [смотреть все]  
  • +/
    да одинаково примерно будет: трассировщик поможет.
     
     
  • 5.48, анон, 23:34, 18/02/2014 [^] [ответить] [смотреть все]  
  • +/
    почитайте про 124 0 и вообще про побитовые операторы в JS, сударь Вкратце -... весь текст скрыт [показать]
     
     
  • 6.49, arisu, 06:28, 19/02/2014 [^] [ответить] [смотреть все]  
  • +/
    а я советую прочитать про то, что такое tracing compilers, и почему здесь почти ... весь текст скрыт [показать]
     
  • 2.47, Сеня, 22:06, 18/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    > когда они asm.js добавят?

    давно уже!

     
  • 1.6, ip1981, 13:04, 14/02/2014 [ответить] [смотреть все]  
  • –1 +/
    Единственный движок, без проблем работающий на солярке :-)
     
  • 1.7, A.Stahl, 14:29, 14/02/2014 [ответить] [смотреть все]  
  • –1 +/
    >фоновой компиляции JavaScript

    Сколько возни ради этого JS. Странный это язык -- вроде и язык как язык, но никогда не видел, чтобы JS использовался для чего-то кроме свистелок.
    Ну перделки ещё, говорят, пишут на нём.

     
     
  • 2.9, Anonymus, 14:32, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • –2 +/
    миллионы мух не могут ошибаться
     
     
  • 3.17, Аноним, 16:38, 14/02/2014 [^] [ответить] [смотреть все]  
  • +1 +/
    Всегда было интересно, с какой целью аноны при любом удобном случае употребляют ... весь текст скрыт [показать]
     
  • 2.10, Аноним, 14:39, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    Отучаемся говорить за всех То, чего не знаешь лично ты - не тождественно тому, ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.13, A.Stahl, 15:14, 14/02/2014 [^] [ответить] [смотреть все]  
  • –2 +/
    >Отучаемся говорить за всех.

    Учимся читать. Где это я говорил "за всех"? :)

     
  • 2.14, Аноным, 15:39, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Да с ним уже ничего не сделать, кто хотел, тот давно разобрался, много всего нап... весь текст скрыт [показать] [показать ветку]
     
  • 2.16, тоже Аноним, 16:09, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    То есть, например, банальный калькулятор цены для клиента вам на сайтах никогда ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.18, A.Stahl, 16:49, 14/02/2014 [^] [ответить] [смотреть все]  
  • +4 +/
    Да, это свистелки Я где-то сказал, что свистелки это плохо Вы, кстати, не пер... весь текст скрыт [показать]
     
     
  • 4.24, тоже Аноним, 18:28, 14/02/2014 [^] [ответить] [смотреть все]  
  • +/
    Кто же вас правильно поймет, когда вы так вот буквально пишете - что код пользо... весь текст скрыт [показать]
     
  • 4.29, Аноним, 20:40, 14/02/2014 [^] [ответить] [смотреть все]  
  • +/
    JS язык общего назначения Тот факт что практически все операционные системы, по... весь текст скрыт [показать]
     
     
  • 5.37, arisu, 03:35, 15/02/2014 [^] [ответить] [смотреть все]  
  • +/
    это какие перечисляем, не стесняемся ... весь текст скрыт [показать]
     
  • 3.23, тот ещё Анонимус, 17:49, 14/02/2014 [^] [ответить] [смотреть все]  
  • –1 +/
    Уже давно без JS на Опеннете И что ... весь текст скрыт [показать]
     
  • 3.28, Анончик, 20:33, 14/02/2014 [^] [ответить] [смотреть все]  
  • +/
    отключил, брат жив.
    что дальше?
     
  • 3.36, arisu, 03:35, 15/02/2014 [^] [ответить] [смотреть все]  
  • +/
    никогда и не включал а что должно было произойти ... весь текст скрыт [показать]
     
  • 2.20, кевин, 17:40, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    я вижу вашу лень даже через слои напусконого сарказмического жира, хорошая попыт... весь текст скрыт [показать] [показать ветку]
     
  • 2.34, Аноним, 01:20, 15/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Включил недавно JS в elinks. Брат жив.
     
  • 2.38, arisu, 03:37, 15/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    мода-с 171 мы хотим уеб-приложения чтобы было веселее 8212 мы выберем для... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.39, тоже Аноним, 11:50, 15/02/2014 [^] [ответить] [смотреть все]  
  • +/
    Очень хотелось бы услышать о более подходящих инструментах для веб-приложений.
     
     
  • 4.40, arisu, 11:54, 15/02/2014 [^] [ответить] [смотреть все]  
  • +/
    как я уже говорил, суть такова tm , что 171 уеб-приложения 187 не нужны сан... весь текст скрыт [показать]
     
  • 1.15, krasnodar2000, 15:51, 14/02/2014 [ответить] [смотреть все]  
  • –1 +/
    А реально вообще дождаться такого, что браузер тянет с сервера байт-код,
    а ты у же с какого хочешь языка получаешь этот байткод?
     
     
  • 2.21, кевин, 17:42, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    naCL почти у LLVM вроде была похожая технология в академических проектах ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.27, krasnodar2000, 20:06, 14/02/2014 [^] [ответить] [смотреть все]  
  • +/
    NaCL не то, это же нативный код
     
  • 3.32, Аноним, 22:25, 14/02/2014 [^] [ответить] [смотреть все]  
  • +/
    Pnacl более подходит под вышеперечисленные требования.
     
     
  • 4.42, krasnodar2000, 19:33, 15/02/2014 [^] [ответить] [смотреть все]  
  • +/
    >Pnacl

    о, это вроде оно

     
  • 2.31, Аноним, 20:48, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Java не?
     
  • 2.35, Аноним, 01:21, 15/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Так на сегодняшний день JavsScript и есть этот байткод А пишут люди на ClojureS... весь текст скрыт [показать] [показать ветку]
     
  • 1.19, Аноним, 17:05, 14/02/2014 [ответить] [смотреть все]  
  • +/
    Офигеть. А в мозилле что-то подобное будет?
     
     
  • 2.22, кевин, 17:42, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    > Офигеть. А в мозилле что-то подобное будет?

    напиши будет.

     
     
  • 3.25, Аноним, 18:30, 14/02/2014 [^] [ответить] [смотреть все]  
  • –1 +/
    Это без всяких приколов - самый реалистичный вариант Ничем серьёзным мазила для... весь текст скрыт [показать]
     
  • 2.26, Аноним, 19:31, 14/02/2014 [^] [ответить] [смотреть все] [показать ветку]  
  • +2 +/
    http bugzil la 813559 С 20 версии уже есть и работает ... весь текст скрыт [показать] [показать ветку]
     

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


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