powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Java JIT - всё? Берёмся за ум
25 сообщений из 111, страница 2 из 5
Java JIT - всё? Берёмся за ум
    #39463569
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Это называется модульность. Есть в разных языках и не особо как то влияет на открытость.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463696
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TYuRockНо как ты ни крути, c++ - язык, а .net - платформа.
Все это маркетинг от МС.
с++ придумал на MS. Он был языком, когда MS еще не было.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463704
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockDima Tпропущено...

Все это маркетинг от МС.
с++ придумал на MS. Он был языком, когда MS еще не было.
Я про .Net и все что с ним связано.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463714
andr_andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TYuRockпропущено...

А как может платформа быть быстрее языка программирования (на котором, к слову, можно писать программы для этой платформы)? Абсурд какой-то.
Неверно. В итоге все компилируется в машинный код, т.е. в ассемблер. Только по-разному: .NET учитывает особенности конкретного проца, т.к. компиляция идет по месту, а С++ нет, т.к. понятия не имеет где его запустят.

Для оптимизации работы приложения под конкретную платформу испокон веков используется модульная(плагинная) архитектура.
Например, древний Adobe Photoshop подключал модули использующие MMX-команды (и другие SIMD-расширения), если видел, что процессор их поддерживает. Практически все CAD-системы делают аналогично, настраиваясь на аппаратное и программное окружение.
Поэтому утверждение о "медленности" С++ по сравнению с .NET - маркетинговый ход.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463719
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemarglmayton,

Это называется модульность. Есть в разных языках и не особо как то влияет на открытость.
Я говорю о свойствах рефлексии байт-кода и интроспекции. Про модульность я вообще не говорил
и это отдельная "плоскость" или "измерение" если хотите.

Если разработчики Jdk9/Java9 перейдут на модель дистрибуции основанную на платформенном коде
то я считаю что это нанесет некоторый ущерб открытости.

Впрочем за это говорить еще рано. Давайте посмотрим что будет в девятке и как.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463722
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andr_andreyПоэтому утверждение о "медленности" С++ по сравнению с .NET - маркетинговый ход.
Я выше ссылку давал на результаты конкретного теста. И не утверждал что С++ медленнее. Не надо передергивать.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463739
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЧто будет если мы из стека технологии убираем байткод? Тоесть переходим к классическоймодели дистрибуции ПО. Можно вспомнить легенду для чего создали яву. Согласно преданию неск. чел-к хотели, чтобы оно везде могло работать, вот и порешили использовать всеобщий интерпретатор.
Если его убрать, то дотнет и ведроид будут навроде радстудии - такой же вещью в себе. С разницей лишь, что рад и нет станут похожими по концепцииям, если захочется сохранить заменяемость c# / vb# ... , к-рые тогда вновь станут обычными, без диезов.
Ну а ява - не фиг тогда 1 класс= 1 файл с тем же именем. И что станет с JSP я Х3.
И как там будет с прозраачностью или открытостью - тоже Х3. Смартфончики, хе-хе - тут уж выбирай сильно заранее, на чью марку подсесть. А кому все эти резиновые интерфесы станут нужны? Во, блин! веб-дизайнерам лафа настанет.

Короче, не было гвоздя - подкова пропала, не было подковы - лошад за хромала ...
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463796
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторС выпуском JDK 9 «из коробки» появляется возможность статической компиляции, т.е. преобразования в код целевой платформы (т.н. native). Правда, пока только под Linux.

Поразительно, как весь мир массово занимается творческим онанизмом и генерацией энтропии годами и десятилетиями вместо работы :) Ну да ладно - пусть развлекаются.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463802
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мы делали, делали, делали, и, наконец, к 9-й версии, придумали компилятор!
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463844
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока этот топик - собрание научной фантастики и туманных прогнозов.

Давайте еще раз внимательно прочитаем JEP 295: Ahead-of-Time Compilation
http://openjdk.java.net/jeps/295 и попытаемся понять о чем там вообще идет речь.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463877
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TЯ про .Net и все что с ним связано.
Ты сравнивал язык и платформу.
Это всё равно, что сказать "По учебникам математики" учиться математике быстрее, чем по учебникам, написанным на русском языке. При том, что учебники математики одинаковы на всех языках (к примеру).
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463909
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockDima TЯ про .Net и все что с ним связано.
Ты сравнивал язык и платформу.
Это всё равно, что сказать "По учебникам математики" учиться математике быстрее, чем по учебникам, написанным на русском языке. При том, что учебники математики одинаковы на всех языках (к примеру).
.Net платформа только для языков созданных для нее (C#, F#, VB.NET и т.д.) и С++ к ним не относится.
Я сравнивал скорость работы алгоритма на C# и на С++ (исходники тут 20505601 ), но с таким же успехом я мог написать на VB.NET, т.к. к итоге мой код откомпилируется в IL-код .Net, а при запуске .Net скомпилирует IL-код его в бинарный код. В отличии от С++, который сразу компилирует в бинарный код.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39463916
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockТы сравнивал язык и платформу.
Топик именно об этом: что лучше JIT-компилятор или обычный компилятор. Собственно поэтому я написал .Net, т.к. это и есть JIT-компилятор.

В том ключе, в котором ты смотришь на мои посты, наверно, правильнее было бы писать C#.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464036
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПока этот топик - собрание научной фантастики и туманных прогнозов.

Давайте еще раз внимательно прочитаем JEP 295: Ahead-of-Time Compilation
http://openjdk.java.net/jeps/295 и попытаемся понять о чем там вообще идет речь.
Это же читать, переводить и думать надо ((((
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464039
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Топик IMHO банален

автор топикано теперь признаем, что надо просто сделать обычный компилятор

М.Булгаков Мастер и маргаритаопять-таки случай так называемого вранья
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464066
Addx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно, тема появилась одновременно с самими jit компиляторами.
И дело не в .NET и C++
Реальный вопрос такой - может ли jit-компилятор быть быстрее обычного компилятора?
Ответ очевиден - да, может. Теоретически. А дальше есть много факторов - среда, железо, софт.
Банально - компилятор не может знать о наличии расширенных инструкций у проца (ключи компиляции и исходники - из другой оперы), а вот jit-компилятор - легко. Ускорение и в 10, и в 100 раз может быть! В теории)
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464093
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИМХО На практике в итоге упремся в нехватку кэша проца, т.е. тормоза чтения из памяти и при многопоточности в тормоза синхронизации кэшей проца .
И тут пофиг JIT или нет компилятор. Тут важно как код написан, т.е. алгоритмы.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464104
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На практике за JIT мы платим свою плату. Например PermGen (Metaspace) всегда будет хранит
копии модулей байткода даже если они уже переложены в native. По сути имеет место дублирование
логики.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464110
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TИМХО На практике .....упремся...
На какой практике?

Обычно, в космической практике, сферические кони в вакууме никуда упираться не должны!

Т.к. по методологие, сферические кони должны плавать в полном вакууме. А в вакууме, по определению, не должно быть ни памяти, ни синхронизации. Т.ч., если все сделано верно, то упираться в них кони никак не могут!

Если же у Вас они упираются, Вы где-то ошиблись и отступили от методологии. Ищите ошибку в Вашем коде.

IMHO & AFAIK

Dima T.... тормоза чтения из памяти и ...
совершенно детсадовское изложение принципов работы вакуумных насосов и психологии коней

может быть 100500 причин, почему IPC не достигает максимального значения, скорость памяти - лишь одна из них и, скорее всего, даже не основная

Т.к.:
1) AFAIK значительно более частая ситуация, что инструкции не могут быть поставлены на выполнение, т.к. ожидают данных от пред. инструкций
2) "скорость памяти" это вообще мифологическое существо. У процессора есть кэшь. Доступ к которому занимает несколько тактов. Т.ч. "скорость памяти", вроде даже и термина такого в пакетах типа Intel VTune нет. Она никого не интересует. Есть метрика промахи кэша (вроде даже разнообразные). Которые, опять таки, могут возникать по 100500 причинам.
и так далее....

IMHO & AFAIK. Не являюсь специалистом по high performance, Intel VTune последний раз запускал много-много лет назад.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464113
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНа практике за JIT мы платим свою плату. Например PermGen (Metaspace) всегда будет хранит
копии модулей байткода даже если они уже переложены в native. По сути имеет место дублирование
логики.
Дублирование при современных компьютерах - фигня

Самая большая проблема, возрастает сложность системы. Никто не может объяснить, как же этот JIT работает.

Поэтому, если все хорошо, все счастливы и восхваляют создателей.

А если что-то не хорошо... то никто не знает, что делать... если есть бубны - берут бубны... если есть деньги - начинают ритуалы поклонения карго-культу...

А истина элементарна. Никто не знает, как же оно на самом деле работает. Разных теорий и точек зрения мульон, а как же на самом деле - никто не знает. Возможно, даже не знают создатели JIT и Java. Слишком велика сложность получившейся системы. И слишком она, в силу своей сложности, стала закрытой.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464118
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev, о какой закрытости ты говоришь? Есть сорцы. Сиди.. разбирайся.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464119
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevDima TИМХО На практике .....упремся...
На какой практике?
Например используя буфер влезающий в кэш проца я ускорил расчет вдвое.

По второму пункту тут добавив выравнивание под кэш линию проца (class lite_align64_t) я ускорил тест с 35 до 40 млн. попугаев в секунду.

Вот такая практика.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464121
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevНа какой практике?

Обычно, в космической практике, сферические кони в вакууме никуда упираться не должны!

Т.к. по методологие, сферические кони должны плавать в полном вакууме. А в вакууме, по определению, не должно быть ни памяти, ни синхронизации. Т.ч., если все сделано верно, то упираться в них кони никак не могут!

Если же у Вас они упираются, Вы где-то ошиблись и отступили от методологии. Ищите ошибку в Вашем коде.

Я месседж Димы понял так.

- Мы не можем наращивать производительность в одном слое архитектуры. Например
подтянули больше ядер процессоров - получили когерентность. Блокировки... спины.. стали
взымать с нас "дань" просто так. Просто подняли тактовую
частоту - надо поднимать и частоту системной шины и как следствие планок памяти и как
следствие HDD тоже должны быстрее отдавать отклики.

Я к этому пришел в нулевых, когда апгрейтил свой комп для игр.

И я вас прошу! Не надо про коней. Уж очень толсто получается.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464128
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton...
И я вас прошу! Не надо про коней. Уж очень толсто получается.
Так тема изначально такая )))
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464131
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЯ месседж Димы понял так...
Все правильно, дело не в способе компиляции, JIT/неJIT примерно одинаковы, т.е. +/- пару процентов производительности, поэтому проблемы уходят в другие слои. Вот мой замер цены записи в одну кэшлинию проца разными потоками. Тормоза в 5-7 раз! Какой тюнинг компилятора это перекроет?
...
Рейтинг: 0 / 0
25 сообщений из 111, страница 2 из 5
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Java JIT - всё? Берёмся за ум
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]