The presenter discusses Tornado VM, a plug-in for existing OpenJDK distributions designed to enable hardware acceleration in an easy manner for Java developers. While Java and the JVM have provided a platform that ensures portability across different architectures and CPU structures, new types of hardware resources such as GPUs and FPGAs present challenges for programmability. Tornado VM offers a Java API and a compiler that can automatically translate Java bytecodes to run on CPUs, multi-core CPUs, GPUs, integrated or discrete GPUs, and FPGAs. The presentation explains the Tornado VM programming model, the task graph, the immutable task graph, and the execution plan, as well as two APIs: the loop parallel API and the kernel API. The presenter concludes by discussing a feature they implemented in a research project called Elegant that creates a software stack unifying big data and IoT deployment and using Tornado VM to enable acceleration as a service.