TornadoVM 1.0 Released For Running Java On Heterogeneous Hardware: CPUs, GPUs & FPGAs

Written by Michael Larabel in Programming on 5 December 2023 at 06:49 AM EST. 3 Comments
PROGRAMMING
TornadoVM 1.0 has been released as the open-source software providing an OpenJDK and GraalVM plug-in for allowing Java on heterogeneous hardware from multi-core CPUs to GPUs and FPGAs. TornadoVM allows targeting OpenCL, NVIDIA PTX, and SPIR-V devices for a rather robust array of hardware support.

TornadoVM has been focused on accelerating Java for machine learning and deep learning software along with computer vision, physics simulations, financial software, signal processing, and more. With today's TornadoVM 1.0 release there is a new API for allocating off-heap objects and array collections, improved handling of TornadoVM's internal bytecode, more math operations supported across OpenCL / PTX / SPIR-V, vector 16 data types for float / double / int, support for the Mesa Rusticl OpenCL driver, improving the default device ordering based on maximum thread size, revamping the installer, documentation improvements, and more.

TornadoVM sample code
TornadoVM sample code


TornadoVM 1.0 also adds support for OpenJDK 21, GraalVM 23.1's JIT compiler, integration with GraalVM 23.1's Truffle languages of Python / Ruby / JavaScript, and various bug fixes.

Downloads and more details on TornadoVM 1.0 via GitHub for those wishing to exploit the potential of GPUs and FPGAs from Java.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week