Scaling Java']Java points-to analysis using SPARK

被引:0
|
作者
Lhoták, O [1 ]
Hendren, L [1 ]
机构
[1] McGill Univ, Sable Res Grp, Montreal, PQ, Canada
来源
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Most points-to analysis research has been done on different systems by different groups, making it difficult to compare results, and to understand interactions between individual factors each group studied. Furthermore, points-to analysis for Java has been studied much less thoroughly than for C, and the tradeoffs appear very different. We introduce SPARK, a flexible framework for experimenting with points-to analyses for Java. SPARK supports equality- and subset-based analyses, variations in field sensitivity, respect for declared types, variations in call graph construction, off-line simplification, and several solving algorithms. SPARK is composed of building blocks on which new analyses can be based. We demonstrate SPARK in a substantial study of factors affecting precision and efficiency of subset-based points-to analyses, including interactions between these factors. Our results show that SPARK is not only flexible and modular, but also offers superior time/space performance when compared to other points-to analysis implementations.
引用
收藏
页码:153 / 169
页数:17
相关论文
共 50 条
  • [21] State-Sensitive Points-to Analysis for the Dynamic Behavior of Java']JavaScript Objects
    Wei, Shiyi
    Ryder, Barbara G.
    ECOOP 2014 - OBJECT-ORIENTED PROGRAMMING, 2014, 8586 : 1 - 26
  • [22] Extending and evaluating flow-insensitive and context-insensitive points-to analyses for Java']Java
    Liang, DL
    Pennings, M
    Harrold, MJ
    ACM SIGPLAN NOTICES, 2001, : 73 - 79
  • [23] Combining type-analysis with points-to analysis for analyzing Java library source-code
    Oracle Labs, Brisbane, Australia
    SOAP - Proc. ACM SIGPLAN Int. Workshop State Art Program Anal., co-located PLDI, (13-18):
  • [24] Modularly combining numeric abstract domains with points-to analysis, and a scalable static numeric analyzer for java
    Fu, Zhoulai
    Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2014, 8318 LNCS : 282 - 301
  • [25] Performance Analysis of Java']Java Virtual Machine for Machine Learning Workloads using Apache Spark
    Hema, N.
    Srinivasa, K. G.
    Chidambaram, Saravanan
    Saraswat, Sandeep
    Saraswati, Sujoy
    Ramachandra, Ranganath
    Huttanagoudar, Jayashree B.
    PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON INFORMATICS AND ANALYTICS (ICIA' 16), 2016,
  • [26] Using ZBDDs in points-to analysis
    Lhotak, Ondrej
    Curial, Stephen
    Amaral, Jose Nelson
    LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, 2008, 5234 : 338 - +
  • [27] Automatic translation from Java']Java to Spark
    Li, Bing
    Xiao, Xueli
    Pan, Yi
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2018, 30 (20):
  • [28] Scaling Type-Based Points-to Analysis with Saturation
    Wimmer, Christian
    Stancu, Codrut
    Kozak, David
    Wurthinger, Thomas
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (PLDI):
  • [29] Analysis of Java']Java Programs using Joana and Java']Java SDG API
    Kumar, Ranjan
    Panda, Subhrakanta
    Mohapatra, Durga Prasad
    2015 INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTING, COMMUNICATIONS AND INFORMATICS (ICACCI), 2015, : 2402 - 2408
  • [30] Remote data analysis using Java']Java
    Kuhlins, S
    Schader, M
    CLASSIFICATION IN THE INFORMATION AGE, 1999, : 359 - 367