Dynamic and Static Code Analysis for Java Programs on Heterogeneous Hardware

Research output: Contribution to conferencePaperpeer-review

Abstract

The increasing prevalence of heterogeneous computing systems, incorporating accelerators like GPUs, has spurred the development of advanced frameworks to bring high performance capabilities to managed languages. TornadoVM is a state-of-the-art, open-source framework for accelerating Java programs. It enables Java applications to offload computation onto GPUs and other accelerators, thereby bridging the gap between the high-level abstractions of the Java Virtual Machine (JVM) and the low-level, performance-oriented world of parallel programming models, such as OpenCL and CUDA. However, this bridging comes with inherent tradeoffs. The semantic and operational mismatch between these two worlds - such as managed memory versus explicit memory control, or dynamic JIT compilation versus static kernel generation - TornadoVM to limit or exclude support for certain Java features. These limitations can hinder developer productivity and make it difficult to identify and resolve compatibility issues during development.

This paper introduces TornadoInsight, a tool that simplifies development with TornadoVM by detecting incompatible Java constructs through static and dynamic analysis. TornadoInsight is developed as an open-source IntelliJ IDEA plugin that provides immediate, source-linked feedback within the developer’s workflow. We present the architecture of TornadoInsight, detail its inspection mechanisms, and evaluate its effectiveness in improving the development workflow for TornadoVM users. TornadoInsight is publicly available and offers a practical solution for enhancing developer experience and productivity in heterogeneous managed runtime environments.
Original languageEnglish
Publication statusPublished - 14 Oct 2025
Event22nd ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes - Singapore, Singapore
Duration: 12 Oct 202518 Oct 2025
https://conf.researchr.org/home/icfp-splash-2025/mplr-2025

Conference

Conference22nd ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes
Abbreviated titleMPLR'25
CitySingapore
Period12/10/2518/10/25
Internet address

Keywords

  • Tool
  • Program Analysis
  • Java
  • Heterogeneous Hardware

Fingerprint

Dive into the research topics of 'Dynamic and Static Code Analysis for Java Programs on Heterogeneous Hardware'. Together they form a unique fingerprint.

Cite this