首页> 外文会议>Conference on object-oriented programming, systems, languages, and applications >Compositional pointer and escape analysis for Java programs
【24h】

Compositional pointer and escape analysis for Java programs

机译:Java程序的组成指针和逃生分析

获取原文

摘要

This paper presents a combined pointer and escape analysis algorithm for Java programs. The algorithm is based on the abstraction of points-to escape graphs, which characterize how local variables and fields in objects refer to other objects. Each points-to escape graph also contains escape information, which characterizes how objects allocated in one region of the program can escape to be accessed by another region. The algorithm is designed to analyze arbitrary regions of complete or incomplete programs, obtaining complete information for objects that do not escape the analyzed regions. We have developed an implementation that uses the escape information to eliminate synchronization for objects that are accessed by only one thread and to allocate objects on the stack instead of in the heap. Our experimental results are encouraging. We were able to analyze programs tens of thousands of lines long. For our benchmark programs, our algorithms enable the elimination of between 24% and 67% of the synchronization operations. They also enable the stack allocation of between 22% and 95% of the objects.
机译:本文介绍了Java程序的组合指针和转义分析算法。该算法基于点的抽象 - 转义图形,其表征了对象中的局部变量和字段是指的是指其他对象。每个点到转义图也包含转义信息,其特征是如何在程序的一个区域中分配的对象可以被转移到另一个区域访问。该算法旨在分析完整或不完整的程序的任意区域,从而获得不逃离分析区域的对象的完整信息。我们开发了一种使用转义信息来消除仅由一个线程访问的对象的同步并在堆栈中分配对象的同步。我们的实验结果令人鼓舞。我们能够分析数万条线路的程序。对于我们的基准程序,我们的算法使得消除了24%和67%的同步操作。它们还使堆栈分配占22%至95%的物体。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号