TornadoInsight Brings The Power Of TornadoVM Inside Intellij
Written by Nikos Vaggalis   
Thursday, 22 February 2024

TornadoInsight is plugin for Jetbrain's popular Intellij IDE for Java developers, that makes working with TornadoVM a much smoother experience.

But first a quick refresher - what is TornadoVM?

TornadoVM is a plug-in to OpenJDK that allows developers to automatically run Java programs on heterogeneous hardware.
That means that TornadoVM allows you to run Java on GPU's, FPGAs and dedicated hardware in order to achieve massive gains in performance. Being able to run on such hardware opens the gates to running resource-hungry applications in Machine Learning, NLP or LLM. And computer graphics too.

The gist is that it allows developers to write code that can be easily offloaded to hardware accelerators without having to get deep into the underlaying computing architectures or heterogeneous parallel programming models.

Tornado recently matured to version 1. 0, adding support for JDK21 and the GraalVM 23.1.0 JIT Compiler. As such TornadoInsight itself in order to work needs TornadoVM version v1.0 onwards as well as JDK 21 onwards.

And with that TornadoInsight integrates two very useful features in Intellij:

1. On-the-Fly Static Checker
Because TornadoVM supports a subset of Java, TornadoInsight provides an on-the-fly static checker which scans TornadoVM code in real time, pinpointing any Java features that are not supported by TornadoVM.

If any discrepancies are found then it notifies the developer so that he turns his attention to the potential compatibility issues and make the appropriate corrections.

Currently, the static checker performs checks for datatypes, Traps/Exceptions, recursion, native method calls, assert statements:

tornado1

2. Dynamic Testing Framework
This framework simplifies the testing process for individual TornadoVM tasks. It automatically wraps the tasks, invoking the native TornadoVM runtime on the developers' machines for seamless debugging and testing.

Developers can just select one or more tasks, click the Run button in the Toolbar to run the test, and TornadoInsight will show a console containing the test results. If a TornadoVM task was compatible with the TornadoVM guidelines, the test will output the generated OpenCL kernel code for it. If not, it will output an exception.

You can either build the plugin yourself by gaining the code from its Github repo, or better yet easily install it from the Jetbrains marketplace.

So after installing JDK21, TornadoVM and the plugin in that order, you'll need to kickstart your journey with something to code inside Intellij. For that I would recommend cloning the Java Ray Tracer for TornadoVM project and start hacking on it!

 

More Information

TornadoInsight on the Marketplace

Github repo

Java Ray Tracer project

Related Articles

TornadoVM Reaches Version 1.0 

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Raspberry Pi Fixes Bug In RP2350 Pico 2 Fix Slow Roll Out
30/07/2025

A new version of the RP2350, the chip that powers the Pico 2, has been announced, but you will have to wait if you want a Pico 2 that uses it.



Deno Not Giving Up Over JavaScript Trademark
01/07/2025

Deno has faced a setback in its attempt to get Oracle to relinquish the JavaScript Trademark. The US Patents Office Trademark Trial and Appeal Board (TTAB) dismissed Deno's fraud claim which is one th [ ... ]


More News

pico book

 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Thursday, 22 February 2024 )