Запускаете Java на железе? Проверьте, что у вас TornadoVM 1.1.1 — иначе вы в прошлом
NewsMakerВ новой версии апгрейд байт-кодов, логов и графов задач.
В начале июля вышел релиз TornadoVM 1.1.1 — системы, которая позволяет запускать Java-программы на гетерогенном оборудовании: CPU, GPU и FPGA. Обновление доступно на GitHub , разработку курирует участник @stratika. По состоянию на релиз сделано более 20 значимых изменений и исправлений.
Ключевое улучшение — оптимизация повторного использования выделенных буферов при пакетной обработке (#657). Это повышает эффективность выполнения задач с большими объёмами данных. Дополнительно внедрён байт-код PERSIST (#660), который отслеживает жизненный цикл объектов и позволяет надёжно управлять памятью между выполнениями TaskGraph.
Также в логах теперь сохраняются байт-коды TornadoVM (#661), а режим передачи данных TRANSFER_TO_DEVICE_ONCE стал более прозрачен при отладке (#660). Обновлена документация по флагам TornadoVM (#667), добавлены новые API-функции для «разогрева» исполнения (#686) и переработан тип Matrix4x4Float (#670).
Рефакторинг коснулся и динамической реконфигурации (#685): улучшена производительность при переключении между устройствами, включая режимы параллельного исполнения. Добавлены новые примеры, включая матрично-векторное умножение в строковом формате (#679) и юнит-тесты для вычислительных ядер (#676).
Обновлён установочный скрипт
Поддержка расширена: добавлены инструкции по сборке на архитектуре RISC‑V (#668). В список исправлений вошли проблемы с GridScheduler при нескольких TaskGraph (#666), баг с именем ядра в PTX (#664), замена
Полный список изменений между версиями 1.1.0 и 1.1.1 доступен в changelog проекта .

В начале июля вышел релиз TornadoVM 1.1.1 — системы, которая позволяет запускать Java-программы на гетерогенном оборудовании: CPU, GPU и FPGA. Обновление доступно на GitHub , разработку курирует участник @stratika. По состоянию на релиз сделано более 20 значимых изменений и исправлений.
Ключевое улучшение — оптимизация повторного использования выделенных буферов при пакетной обработке (#657). Это повышает эффективность выполнения задач с большими объёмами данных. Дополнительно внедрён байт-код PERSIST (#660), который отслеживает жизненный цикл объектов и позволяет надёжно управлять памятью между выполнениями TaskGraph.
Также в логах теперь сохраняются байт-коды TornadoVM (#661), а режим передачи данных TRANSFER_TO_DEVICE_ONCE стал более прозрачен при отладке (#660). Обновлена документация по флагам TornadoVM (#667), добавлены новые API-функции для «разогрева» исполнения (#686) и переработан тип Matrix4x4Float (#670).
Рефакторинг коснулся и динамической реконфигурации (#685): улучшена производительность при переключении между устройствами, включая режимы параллельного исполнения. Добавлены новые примеры, включая матрично-векторное умножение в строковом формате (#679) и юнит-тесты для вычислительных ядер (#676).
Обновлён установочный скрипт
tornadovm-installer
, который теперь работает в интерактивном режиме (#695), а также получил опцию --auto-deps
и восстановленные аргументы для выбора JDK и бэкендов (#697). Изменения задокументированы в README (#698). Поддержка расширена: добавлены инструкции по сборке на архитектуре RISC‑V (#668). В список исправлений вошли проблемы с GridScheduler при нескольких TaskGraph (#666), баг с именем ядра в PTX (#664), замена
1.0/sqrt(x)
на rsqrt(x)
(#677), а также улучшение логирования и профилирования на macOS (#671, #678). Полный список изменений между версиями 1.1.0 и 1.1.1 доступен в changelog проекта .