OpenJ9 и Project Graal/ Трюфель

Команда HotSpot JVM разрабатывает чрезвычайно крутой проект Graal/Truffle, который позволяет разработчикам динамически компилировать / внедрять Java, Javascript (и другие) для работы на скорости JVM. Вопросы: - Является ли OpenJ9 совместимым с Graal/Truffle? - Если OMR похож на Graal/Truffle, можете ли вы противопоставить их?

2 ответа

Решение

Некоторая информация о поддержке Truffle API находится здесь: https://github.com/eclipse/openj9/issues/59

Сравнения между OMR и Graal были написаны здесь: https://github.com/eclipse/omr/issues/1118

Цитирую Джона Дуймовича из этого номера:

Итак, короткий ответ заключается в том, что Truffle/Graal - это исследовательская работа, направленная на использование JVM для реализации языков программирования. Truffle используется для реализации языков посредством реализации синтаксического анализатора AST и оптимизации его с помощью Graal (пропущено множество деталей). Graal фокусируется на генерации кода и использует Java для сборки мусора. Вы реализуете свой язык на Java. Так как многие целевые языки используют C/C++ в качестве языка реализации, это может быть не стартер, но, возможно, с TruffleC его можно будет использовать для перекомпиляции напрямую, но я не думаю, что это открытый исходный код. У них есть впечатляющие показатели, так что там есть что-то интересное.

а также

Eclipse OMR, готовый к работе код, используемый IBM Java и пытающийся загрузиться на другие языки, имеет хорошие тесты в Java, но для других языков пробные версии еще находятся в процессе разработки, так как OMR около 1 года как проект с открытым исходным кодом. Существующим языковым реализациям не нужно было бы переписывать свою реализацию C/C++, чтобы они могли постепенно принимать компоненты. Если вы хотите интегрировать библиотеку кода или интегрировать отдельную реализацию GC, вы должны выбрать OMR, поскольку они предоставляются в виде модульных компонентов.

Существуют также прототипы, которые позволяют коду Java управлять генератором кода JITBuilder от Java. Смотрите презентацию JVMLS от Марка Стодли: https://www.youtube.com/watch?v=w5rcBiOHrB0

Другие вопросы по тегам