Size: a a a

2021 April 08

A

Alex in graalvm_ru
то есть я правильно понимаю:
берется openjdk и собриается liberica
потом из graalvm ce берётся native image и другие сопутствующие вещи и тоже собирается
это всё тестируется на совместимость с jvmci интерфейсом чтобы всё работало и не ломалось
источник

DC

Dmitry Chuyko in graalvm_ru
Флаги другие, версия другая. AOT. Тоже есть.
источник

DC

Dmitry Chuyko in graalvm_ru
Да, точно
источник

A

Alex in graalvm_ru
спасибо
источник

OS

Oleg Shelajev in graalvm_ru
серьезно? а зачем вы тогда языки тоже делаете? они же будут во первых так себе работать, во вторых могут вообще не работать
источник

DC

Dmitry Chuyko in graalvm_ru
Записи с JRush про Spring Native и Liberica Native Image Kit кстати выложены
https://jrush.bell-sw.com/reports
источник

DC

Dmitry Chuyko in graalvm_ru
А почему языки должны плохо работать?
источник

DC

Dmitry Chuyko in graalvm_ru
Зачем - отличная же тема. Больше было вопросов к инициализации классов при компиляции.
источник

DC

Dmitry Chuyko in graalvm_ru
вообще цель - помочь микросервисам в контейнерах. поэтому в частности есть сборки для musl, чтобы контейнеры были крошечными
источник

OS

Oleg Shelajev in graalvm_ru
не, я имею в виду не зачем вы НИК делаете
источник

OS

Oleg Shelajev in graalvm_ru
а зачем языки
источник

OS

Oleg Shelajev in graalvm_ru
можно же просто jdk + native image
источник

D

Dmitry in graalvm_ru
А по-простому можете пояснить, чем грозит принятие JEP-410?
источник

A

Alex in graalvm_ru
если же нету грааль jit, то языки только в режиме интерпретатора

но в 11 он ещё есть, вопрос что будет дальше
источник

DC

Dmitry Chuyko in graalvm_ru
Таллингер точно будет использовать GraalVM, а не OpenJDK
источник

d

dl in graalvm_ru
Разве нет другого JIT-а? Мне вот непонятно, в чем плюс использования именно Graal JIT.
источник

DC

Dmitry Chuyko in graalvm_ru
мы языки-то поставляем тоже для native image
источник

A

Alex in graalvm_ru
условно у вас есть CPython который парсит питон код и выполняет в режиме интерпретатора (сам интепретатор написан на cи и скомпилирован)

а есть PyPy, который уже делает jit для методов и циклов (пайпай написан на питоне, вернее на подмножестве статически типизированном)

реализация питона/рубей в случае обычного джита будет работать условно как cpython (jit соберет только интерпретатор в нативный код)

в случае graal jit он понимает что за аннотации расставлены на классах интерпретатора и может уже из полученного распаршенного питон/руби кода сделать сразу нативный код, а не интерпретировать его отдельно по узлам (такой pypy)
источник

A

Alex in graalvm_ru
то есть питон код
1 + 1

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

DK

Dmitriy Kovalenko in graalvm_ru
Сегодня решилось, это автоматический модуль, нужно было его добавить в —module-path - сработало
источник