Информация об изменениях

Сообщение Re[49]: dotnet vs java 2016-2020 от 19.10.2016 7:40

Изменено 19.10.2016 7:41 Serginio1

Здравствуйте, ·, Вы писали:

·>Здравствуйте, Serginio1, Вы писали:


S>>>> То что в яблоках используется только натив.

·>Хорошая гипотеза, но требует доказательств.

S>>·>В общем случае — не значит. JIT может иногда давать лучший код, т.к. ему доступно реальная информация времени исполнения. AOT — этого может и не знать. Скажем, типичный пример — virtual call elimination — если используется единственная имплементация виртуальной функции во время работы приложения, то JIT может выкинуть косвенный вызов. AOT — такой информацией просто не обладает.

S>> Угу на мобильных то устройствах? Там большинство до сих пор сидит на Java 6.
·>Да этому уж много лет, думаю с java 5 или как раз с 6.
·>Но даже если и так, интересно, что быстрее появится на мобильниках — java 8 или .net native?

Это касается Java/ На IPhone и WinMo .net native есть.
S>> А вот что касается инлайнинга и прочих оптимизаций то тут никакой оптимизатор лучше не сделает.
·>inline тоже делается. Притом после virtual call elimination. Круто ведь — возможность инлайна виртуальных функций!
·>https://blog.jooq.org/2016/07/19/the-java-jit-compiler-is-darn-good-in-optimization/
То есть это для мобильников? И это касается только итераторов.
Интерес представляет инлайнинг компараторов и прочих делегатоа прежде всего в дженериках.
На подобии roslyn-linq-rewrite

S>>>>>> На самом деле смысл в .Net Native не только в скорости и меньше расхода батареи,

S>>>>·>У тебя есть сравнение? Или опять голословные утверждения?
S>>>> Ну быстрее загружается, быстрее работает. Есть цифры на сайте MS.
S>>·>Покажи.
S>> https://msdn.microsoft.com/ru-ru/library/dn643729(v=vs.110).aspx
S>>https://social.msdn.microsoft.com/Forums/en-US/f650e4d4-578f-4ef9-84d1-0d3eac9147c9/uwp-net-native-vs-net-jit-benchmark?forum=wpdevelop
S>> По сборке мусора здесь
S>>https://msdn.microsoft.com/pl-pl/windows/uwp/debug-test-perf/improve-garbage-collection-performance
·>А, фу-ты. Я думал быстрее, чем java. А так это просто значит, что обычный fw медленно работает, native fw — нормально, наконец-то.
То есть ты сравнивал мобильниках на java 5 и 6 с .Net Native?

S>>>>·>ART (Android Runtime) уже давно занимается компиляцией java в натив, install time — под конкретный девайс.

S>>>> Спасибо. Интересно. Но там вроде компиляция на самом девайсе, в отличеие от MicroSoft
S>>·>При желании компиляцию можно и до закачки делать — но непонятно зачем, тебе придётся компилировать под все возможные платформы, а их чуть больше чем дофига и постоянно клепают новые.
S>> Так компилируется на стороне магазина. С мобильного указываются параметры и под него уже компилится или бертся из уже скомпиленных. Количество марок аппаратов ограничено.
·>Можно и так, запускай ART-конверсию на серваке... Но непонятно что это даёт, кроме как лишнюю нагрузку на сервера магазина.
·>И представь себе — выходит очередная версия компилятора с новыми фичами оптимизации и весь мир ломится на несчастные сервера магазина для обновления _всех_ приложений под _все_ платформы.
Угу. Весь мир Андроида сидит на java 5 или как раз с 6.
S>>>> Нужна. Здесь на форуме много копий по этому поводу сломано.
S>>·>Обсускаторы для java тоже есть.
S>> Есть но машинный код лучше.
·>И компилятор тоже есть, для особо страждущих. https://www.excelsiorjet.com/
Еще раз смотрим версию, и вспоминаем на чем народ на Андроид до сих пор сидит
Re[49]: dotnet vs java 2016-2020
Здравствуйте, ·, Вы писали:

·>Здравствуйте, Serginio1, Вы писали:


S>>>> То что в яблоках используется только натив.

·>Хорошая гипотеза, но требует доказательств.

S>>·>В общем случае — не значит. JIT может иногда давать лучший код, т.к. ему доступно реальная информация времени исполнения. AOT — этого может и не знать. Скажем, типичный пример — virtual call elimination — если используется единственная имплементация виртуальной функции во время работы приложения, то JIT может выкинуть косвенный вызов. AOT — такой информацией просто не обладает.

S>> Угу на мобильных то устройствах? Там большинство до сих пор сидит на Java 6.
·>Да этому уж много лет, думаю с java 5 или как раз с 6.
·>Но даже если и так, интересно, что быстрее появится на мобильниках — java 8 или .net native?

Это касается Java/ На IPhone и WinMo .net native есть.
S>> А вот что касается инлайнинга и прочих оптимизаций то тут никакой оптимизатор лучше не сделает.
·>inline тоже делается. Притом после virtual call elimination. Круто ведь — возможность инлайна виртуальных функций!
·>https://blog.jooq.org/2016/07/19/the-java-jit-compiler-is-darn-good-in-optimization/
То есть это для мобильников? И это касается только итераторов. Это и в .Net есть
Интерес представляет инлайнинг компараторов и прочих делегатоа прежде всего в дженериках.
На подобии roslyn-linq-rewrite

S>>>>>> На самом деле смысл в .Net Native не только в скорости и меньше расхода батареи,

S>>>>·>У тебя есть сравнение? Или опять голословные утверждения?
S>>>> Ну быстрее загружается, быстрее работает. Есть цифры на сайте MS.
S>>·>Покажи.
S>> https://msdn.microsoft.com/ru-ru/library/dn643729(v=vs.110).aspx
S>>https://social.msdn.microsoft.com/Forums/en-US/f650e4d4-578f-4ef9-84d1-0d3eac9147c9/uwp-net-native-vs-net-jit-benchmark?forum=wpdevelop
S>> По сборке мусора здесь
S>>https://msdn.microsoft.com/pl-pl/windows/uwp/debug-test-perf/improve-garbage-collection-performance
·>А, фу-ты. Я думал быстрее, чем java. А так это просто значит, что обычный fw медленно работает, native fw — нормально, наконец-то.
То есть ты сравнивал мобильниках на java 5 и 6 с .Net Native?

S>>>>·>ART (Android Runtime) уже давно занимается компиляцией java в натив, install time — под конкретный девайс.

S>>>> Спасибо. Интересно. Но там вроде компиляция на самом девайсе, в отличеие от MicroSoft
S>>·>При желании компиляцию можно и до закачки делать — но непонятно зачем, тебе придётся компилировать под все возможные платформы, а их чуть больше чем дофига и постоянно клепают новые.
S>> Так компилируется на стороне магазина. С мобильного указываются параметры и под него уже компилится или бертся из уже скомпиленных. Количество марок аппаратов ограничено.
·>Можно и так, запускай ART-конверсию на серваке... Но непонятно что это даёт, кроме как лишнюю нагрузку на сервера магазина.
·>И представь себе — выходит очередная версия компилятора с новыми фичами оптимизации и весь мир ломится на несчастные сервера магазина для обновления _всех_ приложений под _все_ платформы.
Угу. Весь мир Андроида сидит на java 5 или как раз с 6.
S>>>> Нужна. Здесь на форуме много копий по этому поводу сломано.
S>>·>Обсускаторы для java тоже есть.
S>> Есть но машинный код лучше.
·>И компилятор тоже есть, для особо страждущих. https://www.excelsiorjet.com/
Еще раз смотрим версию, и вспоминаем на чем народ на Андроид до сих пор сидит