Я вот думаю, а есть ли хоть один пример, когда JIT имеет смысл. Смотрите:
- мы запускаем программу как интерпретируемую, т.е. гарантирована только скорость работы интерпретируемой программы. Если мы хотим делать суждения о том, когда рантайм соизволит скомпилировать наш цикл в бинарный код, мы попадаем на скользкую почву.
- программа несёт в себе компилятор (и становится тяжелее)
- программа постоянно запущена как бы под профайлером, т.е., идут постоянные траты процессорных циклов на оценку повторяемости кода и траты памяти на хранение результатов этой оценки. Т.е., она изначально работает не то, что медленнее скомпилированной, а даже медленнее такой же интерпретированной программы.
- время отклика увеличивается. Вызов компилятора приводит к неожиданным затратам CPU, замена кода должна производиться с какой-то блокировкой (хотя и небольшой).
- надёжность снижена. Ошибки самой реализации JIT могут вылезти в произвольное время и их появление зависит от полного пути исполнения программы. Т.е., их крайне сложно диагностировать.
Единственное, что мы за это получаем - переносимость байткода. В любой технической ситуации, которую я могу помыслить, я бы предпочёл компилятор. Кроме того, на практике (мало имел дела с жабой, но), к примеру, исходники ICQ клиентов для мобильных телефонов - разные для разных моделей телефонов, то переносимости байткода всё равно не существует. Итого, вывод: JIT придуман для замедления работы железа и для того, чтобы оно скорее потребовало апгрейда.
Где изъян в моей логике? Какие ситуации я упустил?
←
1
2
3
4
5
6
→





Ответ на:
комментарий
от nu11

Ответ на:
комментарий
от Legioner

Ответ на:
комментарий
от devl547


Ответ на:
комментарий
от den73

Ответ на:
комментарий
от Hellhang


Ответ на:
комментарий
от den73

Ответ на:
комментарий
от congestion_control

Ответ на:
комментарий
от den73


Ответ на:
комментарий
от Hellhang

Ответ на:
комментарий
от Hellhang

Ответ на:
комментарий
от Legioner

Ответ на:
комментарий
от den73

Ответ на:
комментарий
от den73

Ответ на:
комментарий
от den73


Ответ на:
комментарий
от Legioner

Ответ на:
комментарий
от Legioner

Ответ на:
комментарий
от isden

Ответ на:
комментарий
от Legioner

Ответ на:
комментарий
от den73

Ответ на:
комментарий
от Legioner


Ответ на:
комментарий
от annulen

Ответ на:
комментарий
от www_linux_org_ru

Ответ на:
комментарий
от proud_anon


Ответ на:
комментарий
от Legioner

Ответ на:
комментарий
от Legioner

Ответ на:
комментарий
от den73

Ответ на:
комментарий
от annulen

Ответ на:
комментарий
от den73

Ответ на:
комментарий
от www_linux_org_ru

Ответ на:
комментарий
от Legioner


Ответ на:
комментарий
от proud_anon

Ответ на:
комментарий
от www_linux_org_ru

Ответ на:
комментарий
от qnikst

Ответ на:
комментарий
от proud_anon

Ответ на:
комментарий
от den73

Ответ на:
комментарий
от www_linux_org_ru


Ответ на:
комментарий
от qnikst

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Диверсия. (2008)
- Форум jit (2005)
- Форум JIT --- стандарт? (2021)
- Форум jabber.ru & jit (2006)
- Форум Диверсия со шрифтами Il (2018)
- Новости Lua Jit 2.0 (2012)
- Форум Проблемка с JIT (2006)
- Форум Jabber + jit + icq (2006)
- Форум jabberd2 и JIT (2004)
- Форум JIT & Jabberd-2 (2004)