Practical MHP Analysis for Java

View at publisher
Authors: A. Samuel Moses, V. Krishna Nandivada
Cited by: 1
References: 19

Abstract

May happen in Parallel (MHP) analysis is one of the most foundational analysis in the context of programs written in parallel languages like Java. The currently known techniques for doing MHP analysis of Java applications suffer from two main challenges: (i) scalability to real-world large applications, (ii) precision in the presence of complex programs. In this manuscript, we address these two issues with a goal of making MHP analysis for Java applications a practical option. We propose a new MHP analysis scheme called GRIP-MHP. It includes techniques to reduce time taken to perform MHP analysis significantly; it does so by using novel schemes to reduce the size of the input graph (representing the original application). GRIP-MHP also addresses many drawbacks in existing techniques, thereby improving the applicability and precision of MHP analysis for real-world Java applications. We implemented GRIP-MHP in the Soot compiler framework. Our experiments show that GRIP-MHP runs successfully in reasonable time on all the tested benchmarks in DaCapo and Renaissance (geomean 20.176×improvement, over prior work). We find that GRIP-MHP performs more precise joining of threads significant leading to improvements in precision of the analysis results: geomean, 1.85×reduction in MHP pairs, over prior work.

Fields of Study & Subjects

Parallel Computing and Optimization Techniques Logic programming and type systems Interconnection Networks and Systems

Publication details

Journal / source
Proceedings of the 35th ACM SIGPLAN International Conference on Compiler Construction
Publisher
ACM
Pages
218–229
Publication date
28 January 2026