Показать сообщение отдельно
  #7 (permalink)  
Старый 14.02.2016, 01:57
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Цитата:
Во-вторых, JIT компиляция точно так же переводит в нативный бинарный
Как бы никто и не спорит. Только JIT это делает во время работы программы, а не сразу + есть много способов в JS отменить работу JIT в рамках функции - например использовать eval.

Цитата:
Нет никакого смысла каждую итерацию цикла чтото там опять компилировать, интерпретировать
Обычно используется перевод кода в байткод, а затем JIT уже в машинный, но это уже каждая VM по своему, например V8 сразу генерит машинный код, т.е. их получается 2 - оптимизированный и нет.

Цитата:
Единственная причина почему может быть медленнее, это если компилятор хуже.
Конечно нет, JS очень динамичный язык из из-за кучи перестраховок падает производительность.

Цитата:
C++ это AOT
С++ это как правило тупо компиляция в машинный код и распространение уже скомпиленной программы.

JIT - компиляция во время исполнения программы (параллельно с работой программы);
AOT - компиляция перед непосредственным запуском.

***

А вообще, как бы перед тем как строить теории, догадки и т.д. нужно как минимум провести тесты и определить через профилирование на что тратится время и работает ли JIT.

В отладчике ФФ или Хрома всё нужное есть. Также тут можно прочитать про тестирование http://habrahabr.ru/company/mailru/blog/273839/
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 14.02.2016 в 02:30.
Ответить с цитированием