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

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

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

Вроде же есть понятие "масштабируемость".

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

Если не масштабируется, то хоть процессоров, хоть памятью, хоть дисками можно весь дом забить - быстрее работать не будет

И никак это ни с процессорами, ни со скоростью памяти не связано. Исключительно с задачей, используемым алгоритмом и кривизной рук архитектора/программиста.

IMHO
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464139
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T....Тормоза в 5-7 раз! Какой тюнинг компилятора это перекроет?
Я приводил реальную задачу, на реальном проекта

Прикладная система на конкретной железяке (Numa 2 core, 40 ядер) жестоко отжирала CPU. Настройками JVM (GC и JIT) потребление CPU снизилось в 3-4 раза. Куда уходило CPU - я не выяснил (да и не нафиг это не интересно), просто куда-то уходило, "в между модульное пространство". В данном случае, точнее "в между thread пространство".

Причину (особенности конфигурации продакшен сервера) и метод лечения (нужные ключи JVM) нашли, на этом разбирательство завершили.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464141
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Изначально грешили на низкую скорость ConcurrentLinkedList и чрезмерное обилие Atomic'ов в коде. Пытались оптимизировать код. Реальность оказалась проще ))) Шедулер потоков Linux и JVM, почему-то стал "не так" работать.

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

Это красиво в теории. В дискретной математике. В конечных автоматах и сетях Петри.
На практике очень мало задач удачно без потерь масштабируются.

Возьмите любую проблему из области баз данных там где мы работаем не с историческими
а с актуальными сведениями. И начинается. Шардинг. Партишининг. Это все не безплатно.
Кластеры? Они имеют ограничения. Тот-же Oracle RAC Емнип больше 64-х узлов не строится.
Есть там сетевые проблемы. Причем лавинно растущие.

Хорошо масштабируется только то что вообще не взаимодействует ни с чем. Типа
shared nothing.

Но мы живем в мире где не shared nothing а скорее наоборот. Shared 100%.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464151
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mayton, IMHO теперь Вы начали поднимать "очень толстые темы"

mayton....Тот-же Oracle RAC Емнип больше 64-х узлов не строится.
Есть там сетевые проблемы....
Нет там сетевых проблем.
Там есть финансовые проблемы.

Если кто-то оплатил лицензии на Oracle EE на RAC на 64-х узлах... уверяю Вас... у него нет "сетевых проблем". Что бы под этим не подразумевалось. У него проблем ни с сетью, ни с автомобилем, ни с дачей - нет ))) По определению.

mayton...
Возьмите любую проблему из области баз данных там где мы работаем не с историческими
а с актуальными сведениями. И начинается. Шардинг. Партишининг. Это все не безплатно.

Что значит "не бесплатно"?

Если задача допускает партиционирование - в чем проблема?
Если же для задачи партиционирование, как собаке пятая нога, так это и называется "задача (или алгоритм ее решения) не масштабируется".

Тот же www.google.com, vk.com, youtube как-то работают ))) и "в скорость памяти" совершенно не упираются.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464162
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу масштабируемый, RAC и прочего

Бог с ними с OLTP. Это нужно смотреть конкретный код. Возьмем замечательные и популярные ныне системы DWH. Oracle уже много лет назад, позволял делать Materialized View, Query Rewrite, что бы можно было данные __заранее__ пред-агрегировать и не выполнять всю агрегацию в момент обращения пользователя....

В каком же направление развивается ныне DWH решения?

Правильно - масштабирование, шардинг, партиционирование, RAC...

Возьмем 100500 ядер, выдадим им 100500 SSD дисков, разделим один SELECT SUM(*) c FULL TABLE SCAN по 100 Gb таблице на 100500 мелких Select'ов и будем выполнять их параллельно. Все ядра объединим по FC и InfiniBand. И все это назовем Oracle Exadata, а что бы пользователи понимали, что это не хухры мухры, их БД назовем BigDate и DWH....

А поскольку стоить это будет столько, что даже представить сложно... Exadata будем продавать не целиком, а половинками, четвертинами и по одной восьмой части )))

Только, лично у меня, почему-то возникают сомнения, что в 95% задач, которые решаются на таком оборудование, реально нужен FULL TABLE SCAN по 100-1000 GB таблицам ))). И нельзя было для реальных, практических запросов соорудить уже готовую агригацию на нужном уровне деталировки.

Как уже говорили в подфоруме работа про одну российскую компанию "при должно умение, старание и выделенном бюджете, любую базу данных можно сделать самой большой в Европе. И незачем этим гордиться" (не дословно, по памяти)
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464174
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevПо поводу масштабируемый, RAC и прочего

Бог с ними с OLTP. Это нужно смотреть конкретный код. Возьмем замечательные и популярные ныне системы DWH. Oracle уже много лет назад, позволял делать Materialized View, Query Rewrite, что бы можно было данные __заранее__ пред-агрегировать и не выполнять всю агрегацию в момент обращения пользователя....

В каком же направление развивается ныне DWH решения?

Правильно - масштабирование, шардинг, партиционирование, RAC...

Возьмем 100500 ядер, выдадим им 100500 SSD дисков, разделим один SELECT SUM(*) c FULL TABLE SCAN по 100 Gb таблице на 100500 мелких Select'ов и будем выполнять их параллельно. Все ядра объединим по FC и InfiniBand. И все это назовем Oracle Exadata, а что бы пользователи понимали, что это не хухры мухры, их БД назовем BigDate и DWH....

А поскольку стоить это будет столько, что даже представить сложно... Exadata будем продавать не целиком, а половинками, четвертинами и по одной восьмой части )))

Только, лично у меня, почему-то возникают сомнения, что в 95% задач, которые решаются на таком оборудование, реально нужен FULL TABLE SCAN по 100-1000 GB таблицам ))). И нельзя было для реальных, практических запросов соорудить уже готовую агригацию на нужном уровне деталировки.

Как уже говорили в подфоруме работа про одну российскую компанию "при должно умение, старание и выделенном бюджете, любую базу данных можно сделать самой большой в Европе. И незачем этим гордиться" (не дословно, по памяти)
Вот правильная мысль. Только для другой моей темы - грамотные люди эксплуатируют чужую лень, зарабатывая на этом.

// мод UFO on
Яву изобрели Sun, Oracle и IBM чтобы получше продавались их суперкомпьютеры, потому что иначе все начали считать на копеечных интельПК - хватало ресурсов.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464193
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevТот же www.google.com, vk.com, youtube как-то работают ))) и "в скорость памяти" совершенно не упираются.
Все примеры - разные и неудачные.

google.com - по большей части hadoop. Тоесть исторические сведения. Не реал-тайм. Там - масса хитростей
и финтов как уйти от конкуренции и нагрузки. Вобщем хадуп он в африке слон. Нет транзакций. Хадуп индекс
обещает что индексирует ваш сайт. Но когда он сделает это. Сейчас или через сутки - на это нет контракта.

vk.com - материализация даных причем ненормализованных. Ленты сообщений. Не реляционные. Append-only.
По сути это текстовые файлы. Тоже много пространства для манёвра. Тем более что (здесь старик Брюер нам едко
усмехается) система класса A+P (availability + partition tolerance). Нет консистентности.

youtube - вообще не по адресу. Это хранилище огромных мультимедиа-файлов. Почти вся нагрузка - на видео.
A+P. Изменений очень мало. Консистентности нет.

По поводу oracle - дайте время поискать пруфы. Это было во времена Oracle10g. Если найду - отпишу.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464198
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПо поводу oracle - дайте время поискать пруфы. Это было во времена Oracle10g. Если найду - отпишу.
Да верю я, что было ограничение на число нод.
Ну и что с того? 64 ноды для Oracle это дофига и больше.

Будете готовы купить Oracle на 1024 ноды (думаю стоимость лицензии под миллиард долларов уйдет + саппорт под сотню миллионов в год), Ларри Эллисон лично для Вас персональную версию Oracle Database распорядится сделать и лично же вручит лицензию и DVD диск перевязанный ленточкой )))

Не думаю, что Ларри настолько богат, что бы терять клиента, готового заплатить миллиард долларов, из-за каких-то "проблем с сетью" )))

IMHO

maytonвсе примеры - разные и неудачные.

Примеры задач, которые успешно масштабируются

Бессмысленно говорить о производительности или масштабируемости "сферического коня". Одни задачи - лучше масштабируются, другие - хуже.

DWH - масштабируются более-менее хорошо, OLTP - хуже и может требовать __переписывание__ системы.

Аналогично и холивар JIT/не JIT. C / Java. Одни задачи решаются более эффективно/проще на одном средстве, другие на другом.

Ниши применения у них достаточно разные.

Никто в здравом уме не будет делать высокопроизводительные видео-кодеки на Java, просто потому, что Java не имеет нужных инструментов (например возможность писать код с SIMD инструкциями). Так же, вряд ли кто-то будет создавать сайт-визитку в I-net на Assembler'е и MMX/SSE командах, что бы "быстрее работало"

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

А вообще, нит рассуждений я уже потерял )))

Все началось с вброса, что кто-то "Мы очень долго пытались всех на%^&ть с JIT, но теперь признаем, что надо просто сделать обычный компилятор".

Желательно увидеть хоть какую-то ссылку на официальный сайт, где бы говорилось, что в следующей версии Java JIT не будет, а будет обычный компилятор.

Пока такого нет, обсуждать нечего. "Опять-таки случай так называемого вранья" ( C )
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464343
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,

Просто не нужно слишком акцентироваться на заголовке - туда развернутую мысль не всунешь.
Так что про полный отказ от JIT речь не идет. Просто вместо идеи, что JIT решает все проблемы - признали что нет, не все. И предкомпиляция нужна и даже весьма.

Если еще немного обратить внимание на Java9, то можно заметить, что делаются шаги по уменьшению монструозности
инсталляции - назвали это модульностью.

Leonid KudryavtsevАналогично и холивар JIT/не JIT. C / Java. Одни задачи решаются более эффективно/проще на одном средстве, другие на другом.

Ниши применения у них достаточно разные.

Никто в здравом уме не будет делать высокопроизводительные видео-кодеки на Java, просто потому, что Java не имеет нужных

инструментов (например возможность писать код с SIMD инструкциями). Так же, вряд ли кто-то будет создавать сайт-визитку в

I-net на Assembler'е и MMX/SSE командах, что бы "быстрее работало"
Ява более эффективна исключительно в интерпрайзном говнокодинге - она простая как тапок и любой "индус" быстро ей обучится.
А сайты- визитки продолжат делать на Пыхе.

Что же касается эффективности - то нет задач, на которой Ява будет быстрее С, она всегда пусть ненамного но отстает (этим можно обычно пренебречь).
Но это если не учитывать, что она жрет память до 10х-кратного объема от компилируемых языков.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464640
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglЧто же касается эффективности - то нет задач, на которой Ява будет быстрее С, она всегда пусть ненамного но отстает (этим можно обычно пренебречь).
Но это если не учитывать, что она жрет память до 10х-кратного объема от компилируемых языков.
истинные учёные (которые не бизнесмены) трудозатраты программистов не учитывают никогда.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464660
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и заодно предкомпиляцией подтвердили (да и джитом, как и многоядерностью тоже), что эпоха, когда скоростью железа решали проблемы тормозов, как минимум сделала длительную паузу, и требуются алгоритмы. Не так?
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464822
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglЯва более эффективна исключительно в интерпрайзном говнокодинге - она простая как тапок и любой "индус" быстро ей обучится.
А сайты- визитки продолжат делать на Пыхе.

Я сегодня был на собеседовании. Меня хотят нанять на новый проект.
И из трехчасового диалога - мы говорили о Java где-то минут 15.
Все остальное - это (навскидку попробую вспомнить):
- Java (15 минут. Что-то про автобоксинг. Вобщем говно. Нечего говорить)
- Solid (типичные ошибки и нарушения любого их 5 пунктов)
- DBMS.Optimiztic-Pessimistic locking. Примеры.
- Rest/SOAP/HTTP/ORMs
- Scrum/Agile/Estimation
- CI/CD
- Security.
- SQL performance tunning (basics)
- GWT/JavaScript.
- Code style/Refactoring/SonarQube/Code quality/Metrics
- DI, testing

И этот список тем не исключительный а типичный. Поэтому "индус" быстро не обучается. Т.к. даже обученый
Java индус по прежнему никому не нужен. Таких масса. А нужен тот кто выкурит больше технологий смежных
с сабж.

Что же касается эффективности - то нет задач, на которой Ява будет быстрее С, она всегда пусть ненамного но отстает (этим можно обычно пренебречь).
Но это если не учитывать, что она жрет память до 10х-кратного объема от компилируемых языков.
Я не помню ты был участником нашего тяпничного бенчмарка?
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464949
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну не всем же индусам работать тимлидами - потому такой длинный список типовому кодеру учить не надо.

Это кстати, преимущество Явы (и Питона) - что есть куча готовых инструментов и можно быстро научить новичка "методом обезъяны"

mayton..Я не помню ты был участником нашего тяпничного бенчмарка?
Был, я переводил на D.

И, насколько помню, этот процесс перевода был гораздо более гладким, чем Ява - версия. Т.е. утверждать, что Ява идеально повышает производительность труда, я бы не стал.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464982
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я просто хочу акцентировать внимание на то что Java как вещь в себе - никому не нужна.
Она сильна вовсе не языком. И вовсе не перформансом. Который по сабжу (как мы помним)
весьма неплох .(.. ну порядка 170% потраченого времени от C++ на тестах с 3D Графикой. Тот же Питон вылез
на порядки с более худшим резалтом).

Но Java сегодня КМК сильна экосистемой фреймворков и библиотек и она сильна
своим сообществом.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464995
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglЭто кстати, преимущество Явы (и Питона) - что есть куча готовых инструментов и можно быстро научить новичка "методом обезъяны"
Это преимущество 1С, "индусы" все там.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464997
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никоим образом не возражаю.

А если удастся за счет AOT выкинуть JIT из памяти (а это он ее жрет - как впрочем и С++ компилятор - Несколько сотен Мб) и с помощью JigSaw уменьшить футпринт, то будет просто супер.

Ну разве что за исключением синтаксиса - но это можно списать на вкусовщину.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39464998
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton- Solid (типичные ошибки и нарушения любого их 5 пунктов)
Самая типичная ошибка - применение его в стиле "и лоб разобьёт" :)
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39465094
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglА если удастся за счет AOT выкинуть JIT из памяти (а это он ее жрет - как впрочем и С++ компилятор - Несколько сотен Мб)
Хуже отсутствующих знаний - только неправильныеjavaw -Xms1g -Xmx1g jedit.jar
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39465103
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В 1.8 не знаю (они там с метаспейс больно уж намудрили), в предыдущих Java'ах JIT'у под скомпилированный код выдавали 32 Mb с возможным увеличением максимум до 64 Mb. Даже сильно enterprise проектам (Oracle Customer Care & Billing), вполне хватало
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39465123
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНо Java сегодня КМК сильна экосистемой фреймворков и библиотек

Вот многие так говорят. Интересно, что же там такое есть, чего нет у других языков?
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39465128
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не "у других языков", а "у других экосистем".
Чтобы перенести C/C++ приложение с одной архитектуры или/и операционной системы на другую требуется:
1. Изначально заботиться о кросплатформенности;
2. Уметь собирать приложение для всех целевых платформ.
В случае Java первый пункт реализован JVM, JLS и Java SE (другими pure-java) API, второй - JRE, частью которых является JVM.
Про то, что процедура сборки java-приложения не в пример проще и полностью унифицирована - вообще молчу.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39465153
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,

Удивительно что вот всё так хорошо, и при этом почти всё более-менее распространенное написано на нативных языках.
Фотошоп, Офисы (и MS и бесплатные), Skype, Telegram, Viber (кроме Андроида, то есть - под Андроид написали, но это не привело к мульти-платформенности, пришлось писать на разных языках), все распространенные браузеры. Серверные Nginx, Апач сервер, Mongo DB, Ms Sql, MySQL.
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39465166
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,

Т.е 180Мб этого мало?

Кроме того, посмотри пик рабочего набора - потому что JIT уже отработал в основном.

А виртуальная память не особо интересна пока не используется
...
Рейтинг: 0 / 0
Java JIT - всё? Берёмся за ум
    #39465169
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На всякий уточню - выделенная память - это виртуальная.Перевод неточный.

Рабочий набор - это оперативная память (плюс ммапные исполнимые модули почему то)
...
Рейтинг: 0 / 0
25 сообщений из 111, страница 3 из 5
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Java JIT - всё? Берёмся за ум
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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