|
|
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
TL;DR Мы очень долго пытались всех на%^&ть с JIT, но теперь признаем, что надо просто сделать обычный компилятор https://habrahabr.ru/company/jugru/blog/329728/ От меня: просто так без жертв не выйдет, как и для NET native, но в целом +... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2017, 23:10 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
на SQL.ru модно стало с GT и HABRAHABRA статьи репостить? это вообще соответствует правилам форума? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2017, 23:41 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Roman Mejtes, Это не репост, и не моя статья. Да и здесь площадка, для статей, мягко говоря - непригодная. Так что радоваться надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 00:29 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Siemargl...но теперь признаем, что надо просто сделать обычный компилятор Вот хорошо бы теперь ссылку на официальный сайт Oracle дать в подтверждение этого высказывания. А то получается "опять-таки случай так называемого вранья" ( C ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 01:00 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
SiemarglМы очень долго пытались всех на%^&ть с JIT, но теперь признаем, что надо просто сделать обычный компилятор У JIT тоже есть шанс. 20506460 Случайно выяснилось что на разных процах .NET работает по-разному и даже иногда обгоняет С++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 07:30 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
SiemarglTL;DR Мы очень долго пытались всех на%^&ть с JIT, но теперь признаем, что надо просто сделать обычный компилятор https://habrahabr.ru/company/jugru/blog/329728/ От меня: просто так без жертв не выйдет, как и для NET native, но в целом +... не совсем понятно откуда вырван контекст, там куча презентаций ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 08:10 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Dima TСлучайно выяснилось что на разных процах .NET работает по-разному и даже иногда обгоняет С++. А как может платформа быть быстрее языка программирования (на котором, к слову, можно писать программы для этой платформы)? Абсурд какой-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 13:32 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
YuRockА как может платформа быть быстрее языка программирования (на котором, к слову, можно писать программы для этой платформы)? Абсурд какой-то. имеется ввиду сравнение кодогенераторов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 14:05 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
YuRockDima TСлучайно выяснилось что на разных процах .NET работает по-разному и даже иногда обгоняет С++. А как может платформа быть быстрее языка программирования (на котором, к слову, можно писать программы для этой платформы)? Абсурд какой-то. Неверно. В итоге все компилируется в машинный код, т.е. в ассемблер. Только по-разному: .NET учитывает особенности конкретного проца, т.к. компиляция идет по месту, а С++ нет, т.к. понятия не имеет где его запустят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 14:16 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Dima TНеверно. В итоге все компилируется в машинный код, т.е. в ассемблер. Только по-разному: .NET учитывает особенности конкретного проца, т.к. компиляция идет по месту, а С++ нет, т.к. понятия не имеет где его запустят. Еще одно теоретическое достоинство JIT, что он имеет доступ к статистике выполнения кода. Т.е., теоретически, располагает информацией о профиле нагрузки на конкретный код в конкретном алгоритме, что большой плюс. Например можно оптимизировать промахи предсказателя переходов и так далее. Теоретически, т.к. насколько эффективно это реализовано в JIT-компиляторах - огромный вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 14:42 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Dima TYuRockпропущено... А как может платформа быть быстрее языка программирования (на котором, к слову, можно писать программы для этой платформы)? Абсурд какой-то. Неверно. В итоге все компилируется в машинный код, т.е. в ассемблер. Только по-разному: .NET учитывает особенности конкретного проца, т.к. компиляция идет по месту, а С++ нет, т.к. понятия не имеет где его запустят.Может, но на практике я подтверждений этому не видел. Даже наоборот -JIT тратит гораздо больше ресурсов на компиляцию/оптимизацию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 21:13 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Dima TYuRockпропущено... А как может платформа быть быстрее языка программирования (на котором, к слову, можно писать программы для этой платформы)? Абсурд какой-то. Неверно. В итоге все компилируется в машинный код, т.е. в ассемблер. Только по-разному: .NET учитывает особенности конкретного проца, т.к. компиляция идет по месту, а С++ нет, т.к. понятия не имеет где его запустят. Не вижу, где "неверно". Если компилятор C++ сгенерил бинарник под конкретную платформу - то он только в ней и запустится. И, конечно же, он знал, под какую нужно оптимизировать. Под какой проц, если речь о нативном бинарнике. Я уже не говорю о том, что на C++ можно создавать бинарники под платформу .net или uwp. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 23:46 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
YuRock...Я уже не говорю о том, что на C++ можно создавать бинарники под платформу .net или uwp.И лучше не говори, о слишком сложных для тебя вещах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2017, 23:51 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
SiemarglYuRock...Я уже не говорю о том, что на C++ можно создавать бинарники под платформу .net или uwp.И лучше не говори, о слишком сложных для тебя вещахТа с удовольствием бы, но не могу пройти иногда мимо, когда чайник с водой сравнивают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 00:00 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
YuRock, Ага. Пойми принципиальное отличие C++ от C++/CLI, C++/CX Эти гон..ны хотят под прикрытием марки С++ продвинуть свой крючок в твоей з.д..це, а ты подставляешься ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 00:27 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
SiemarglYuRock, Ага. Пойми принципиальное отличие C++ от C++/CLI, C++/CX Эти гон..ны хотят под прикрытием марки С++ продвинуть свой крючок в твоей з.д..це, а ты подставляешься Слушай, мне пофиг вообще все эти войны, они меня не возбуждают. Но как ты ни крути, c++ - язык, а .net - платформа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 00:45 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Dima TВ итоге все компилируется в машинный код, т.е. в ассемблер это разные понятия ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 00:53 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
YuRockЯ уже не говорю о том, что на C++ можно создавать бинарники под платформу .net или uwp. это не C++ , а неведома зверушка от MS (Managed C++) YuRockЕсли компилятор C++ сгенерил бинарник под конкретную платформу компилятор C++ вполне может ограничиться генерацией кода LLVM и отложить генерацию машинного кода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 00:58 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Изопропилкомпилятор C++ вполне может ограничиться генерацией кода LLVM и отложить генерацию машинного кодаЯ для простоты написал. А строго говоря компилятор, C++ в частности, объектные файлы генерит. А что потом из них делается и под какую платформу - другой вопрос. Изопропилэто не C++ , а неведома зверушка от MS (Managed C++)Синтаксис похож на C++? Это уже не мало. В Delphi "nextgen", вон, и строки с нуля, и счетчик ссылок на объекты для их самоудаления... А всё равно это паскаль. Как и "Delphi .net" давно мёртвый тоже Паскалем был. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 01:20 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
YuRockDima Tпропущено... Неверно. В итоге все компилируется в машинный код, т.е. в ассемблер. Только по-разному: .NET учитывает особенности конкретного проца, т.к. компиляция идет по месту, а С++ нет, т.к. понятия не имеет где его запустят. Не вижу, где "неверно". Если компилятор C++ сгенерил бинарник под конкретную платформу - то он только в ней и запустится. С++ генерит готовый бинарник под конкретную платформу и на другой уже не запустится. .NET (даже при использовании его из С++) генерит промежуточный IL код, который будет "докомпилирован" во время запуска. Поэтому в случае С++ мы выбираем: либо компиляция под любой проц, либо под конкретный, но на другом бинарник может не заработать. В случае с .NET этой проблемы нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 07:41 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
YuRockНо как ты ни крути, c++ - язык, а .net - платформа. Все это маркетинг от МС. Они так хорошо все запутали, что без бутылки не разобраться. Если упрощенно: .net это среда исполнения IL кода. Получить IL код (сборку) можно компиляторами C#, F#, VB.NET и т.д. Причем в готовом приложении можно скомбинировать сборки от разных ЯП. В основном под .net пишут на C#. С++ не умеет компилировать .net сборки, он может только использовать готовые, но на практике это мало кто использует. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 07:57 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Dima TС++ не умеет компилировать .net сборки поделка под названием "managed c++" - может создавать чистые .net сборки, ключик для этого у cl есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 08:26 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
Если рассматривать пользу от байткода за последние годы со времен JDK 1.1 то я-бы сказал что он внес неоценимый вклад в развитие Open-Source. Именно благодаря строгому стандарту, и возможности делать рефлексию мы сегодня имеем ГАРАНТИИ прозрачности использования интерфейсной части любой Java-библиотеки. Про .Net я точно не скажу но думаю что некоторые пункты будут тоже аналогичны. Что будет если мы из стека технологии убираем байткод? Тоесть переходим к классической модели дистрибуции ПО. Наш Open-Source станет хуже? Или станет ли менее открытым способ распространения кода? Прошу высказать ваше мнение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 09:05 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
maytonПрошу высказать ваше мнение. ничего не произойдёт, говнокод останется говнокодом, в частности ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 09:22 |
|
||
|
Java JIT - всё? Берёмся за ум
|
|||
|---|---|---|---|
|
#18+
maytonЧто будет если мы из стека технологии убираем байткод? Тоесть переходим к классической модели дистрибуции ПО. Наш Open-Source станет хуже? Или станет ли менее открытым способ распространения кода? С/С++ Open-Source как-то живет без байт-кода. Распространение станет менее удобным, т.к. компилировать придется под конкретную платформу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2017, 09:44 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=39463436&tid=1340359]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
157ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 482ms |

| 0 / 0 |
