TornadoVM is the OpenJDK and GraalVM plug-in that opens up the Java programming language to heterogeneous hardware support by allowing the easy targeting of Java code to TornadoVM targets including OpenCL, NVIDIA PTX, and SPIR-V in addition to CPUs
While most hardware vendors are relying on LLVM when it comes to offloading compute work to GPUs, AI accelerators, FPGAs, and similar heterogeneous compute environments, right now each vendor is basically creating their own LLVM offloading run-time among a lot of other duplicated and often downstream only code