Write a Blog >>
SPLASH 2019
Sun 20 - Fri 25 October 2019 Athens, Greece
Fri 25 Oct 2019 14:00 - 14:22 at Olympia - Implementation Chair(s): Jens Palsberg

We present the design and implementation of GVM, the first system for executing Java bytecode entirely on GPUs. GVM is ideal for applications that execute a large number of short-living tasks, which share a significant fraction of their codebase and have similar execution time. GVM uses novel algorithms, scheduling, and data layout techniques to adapt to the massively parallel programming and execution model of GPUs.
We apply GVM to generate and execute tests for Java projects. First, we implement a sequence-based test generation on top of GVM and design novel algorithms to avoid redundant test sequences. Second, we use GVM to execute randomly generated test cases. We evaluate GVM by comparing it with two existing Java bytecode interpreters (Oracle JVM and Java Pathfinder), as well as with the Oracle JVM with just-in-time (JIT) compiler, which has been engineered and optimized for over twenty years. Our evaluation shows that sequence-based test generation on GVM outperforms both Java Pathfinder and Oracle JVM interpreter. Additionally, our results show that GVM performs as well as running our parallel sequence-based test generation algorithm using JVM with JIT with many CPU threads. Furthermore, our evaluation on several classes from open-source projects shows that executing randomly generated tests on GVM outperforms sequential execution on JVM interpreter and JVM with JIT.

Fri 25 Oct

Displayed time zone: Beirut change

14:00 - 15:30
ImplementationOOPSLA at Olympia
Chair(s): Jens Palsberg University of California, Los Angeles
14:00
22m
Talk
Design, Implementation, and Application of GPU-Based Java Bytecode Interpreters
OOPSLA
Ahmet Celik The University of Texas at Austin, Pengyu Nie The University of Texas at Austin, Chris Rossbach The University of Texas at Austin and VMware Research Group, Milos Gligoric The University of Texas at Austin
DOI
14:22
22m
Talk
Initialize Once, Start Fast: Application Initialization at Build Time
OOPSLA
Christian Wimmer Oracle Labs, Codrut Stancu Oracle Labs, Peter Hofer Oracle Labs, Vojin Jovanovic Oracle Labs, Paul Wögerer Oracle Labs, Peter B. Kessler Oracle Labs, Oleg Pliss Oracle Labs, Thomas Wuerthinger Oracle Labs
DOI Pre-print
14:45
22m
Talk
Reliable and Fast DWARF-Based Stack Unwinding
OOPSLA
Link to publication DOI File Attached
15:07
22m
Talk
PYE: A Framework for Precise-Yet-Efficient Just-In-Time Analyses for Java ProgramsTOPLAS
OOPSLA
Manas Thakur IIT Madras, V Krishna Nandivada IIT Madras