跳到主要内容
10.1145/320384.320387acm会议文章/章节视图摘要出版物页面泼洒会议记录会议集合
第条
免费访问

面向对象语言的转义分析:在Java中的应用

出版:1999年10月1日出版历史

摘要

逃逸分析[27,14,5]是一种静态分析,用于确定数据的生存期是否超过其静态范围。

我们的逃逸分析的主要独创性在于,它精确地确定了赋值的效果,这是将其应用于面向对象语言并取得良好结果所必需的,而之前的工作[27,14,5]将其应用到函数式语言,并且在赋值方面非常不精确。我们的实现分析了完整的Java™语言。

我们已经将分析应用于堆栈分配和同步消除。我们设法堆栈分配13%到95%的数据,在大多数程序上消除了20%以上的同步(两个示例中分别为94%和99%),并获得了高达44%的加速(平均21%)。我们对大型程序的详细实验研究表明,与ML[5]相反,这种改进来自于减少垃圾收集和分配时间,而不是数据局部性的改进[7]。

参考文献

  1. 1AIKEN,A.、FAHNDRICkl,M.和LEVIEN,R.《更好的静态内存管理:改进基于区域的高阶语言分析》。在CM SIG-PLAN编程语言、设计和实现会议(PLDI’95)(加州圣地亚哥,1995年6月),第174-185页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  2. 2ALDRICH,J.、CHAMBERS,C.、SIRER,E.G.和EG-GERS,S.消除Java程序中不必要同步的静态分析。静态分析研讨会(SAS’99)(1999年9月)。]]谷歌学者谷歌学者数字图书馆数字图书馆
  3. 三。BIRgeDA~。,L.,TOFTE,M.,AND VEJLSTRUP,~/{.h'om通过区域表示推理对von Neumann机器进行区域推理。第23届CM SIGPLAN-SIGA CT编程语言原理研讨会(1996年1月),第171-183页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  4. 4BLANCHET,B.垃圾收集统计。DEA报告,INRIA,Rocquencourt,1996年9月。]]谷歌学者谷歌学者
  5. 5BLANcHET,B.逃逸分析:正确性证明、实现和实验结果。在CM SIGACT-SIGPLAN编程语言原则会议(POPL'98)(加州圣地亚哥,1998年1月)中,ACM,第25-37页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  6. 6BOGDA,J.和HSLZLE,U。删除Java中不必要的同步。在面向对象编程、系统、语言和应用会议(OOPSLA’99)上(1999年11月)谷歌学者谷歌学者数字图书馆数字图书馆
  7. 7CARR,S.、MCKINLEY,K.S.和TSENG,C.-W.《改善数据局部性的编译器优化》。第六届编程语言和操作系统体系结构支持国际会议(1994年10月),第252-262页谷歌学者谷歌学者数字图书馆数字图书馆
  8. 8CHASE,D.R.存储分配优化的安全注意事项。《SIGPLAN’88编程语言设计与实现会议论文集》(1988年6月22日至24日),ACM出版社,第1-10页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  9. 9CHOI,J.-D.,GUPTA,M.,SERRANO,M.、SREEDHAR,V.C.和MIDKIFF,S.Java逃逸分析。在面向对象编程、系统、语言和应用会议(OOPSLA’99)上(1999年11月)。]]谷歌学者谷歌学者数字图书馆数字图书馆
  10. 10CoUSOT,P.和COVSOT,R.抽象解释:通过构造或近似不动点对程序进行静态分析的统一格模型。在1977年1月举行的第四届程序设计语言原理年度研讨会上,第238-252页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  11. 11程序分析框架的系统设计。在第六届CM编程语言原理年度研讨会上(1979年1月),第269-282页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  12. 12DEUTSCH,A.关于确定高阶函数规范中动态分配数据的寿命和混叠。在第十七届CM$IGACT-SIGPLAN编程语言原理研讨会(1990年1月)上,第157~168页谷歌学者谷歌学者
  13. 13DEUTSCH,A.指针的跨过程May-Alias分析:超越k限制。《SIGPLAN’94编程语言设计与实现会议论文集》(1994年6月20日至24日),ACM出版社,第230-241页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  14. 14De,UTSCH,A.关于逃逸分析的复杂性。在第2届CM SIGACT-SIGPLAN编程语言原理研讨会(1997年1月)上,第358-371页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  15. 15GAy,D.和STEENSGAARD,B.Java中的堆栈分配对象。http://research.microsoft网站,com/apl.]]谷歌学者谷歌学者
  16. 16HANNAN,J.《函数语言中堆栈分配的基于类型的分析》。第二届国际静态分析研讨会(SAS’95)(1995年9月)论文集,《计算机科学讲义》第983卷,施普林格出版社,第172-188页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  17. 17哈里森·W。Scheme程序的程序间分析和自动验证。Lisp和符号计算2(1989),176-396。]]谷歌学者谷歌学者交叉引用交叉引用
  18. 18HEDERMAN,L.使用参考计数分析编译时间垃圾收集。技术l~ep。赖斯COMP TR88-75,德克萨斯州休斯顿赖斯大学,1988年8月]]谷歌学者谷歌学者
  19. 19HUDAK,P.参考计数的语义模型及其抽象(详细摘要)。1986年关于LISP和函数编程的CM会议记录。(1986年8月),第351-363页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  20. 20HUGHES,S.高阶函数语言编译时垃圾收集。J.逻辑计算。2, 4 (1992), 483 - 509.]]谷歌学者谷歌学者
  21. 21INOUE,K.,SEKI,H.,AND YAGI,H。检测运行时垃圾细胞的功能程序分析。编程语言和系统的CM汇刊10,4(1988年10月),555-578。]]谷歌学者谷歌学者数字图书馆数字图书馆
  22. 22JONES,N.D.和MUCHNICK~S。一种灵活的方法,用于过程间数据流分析和具有递归数据结构的程序。第九届CM SIGACT-SIGPLAN编程语言原理研讨会(1982年),第66-74页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  23. 23LINDHOLM,T.和YELLIN,F.《JavaTM虚拟机规范》。Addison-Wesley,1996年。]]谷歌学者谷歌学者数字图书馆数字图书馆
  24. 24McDOWELL,C.E.减少Java中的垃圾。CM Sigptan通告33、9(1998年9月)、84-86。]]谷歌学者谷歌学者数字图书馆数字图书馆
  25. 25MOHNEN,M.通过高阶遗传分析有效利用闭包。静态分析研讨会(SAS’95)(1995),计算机科学讲稿第983卷,施普林格,第261-278页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  26. 26MOHNEN,M.任意数据结构的高效编译时垃圾收集。在编程语言实现和逻辑编程研讨会(PLILP’95)(1995),计算机科学讲义第982卷,施普林格,第241-258页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  27. 27PARK,Y.G.和GOLDBEKG,}3。列表的转义分析。在A OM SIGPLAN的第9届编程语言设计与实现会议(1992年7月17日至19日),第27卷,第116-127页。]]谷歌学者谷歌学者
  28. 28RUGGIEaI,C.和MURTAGH,T.P.动态分配对象的生存期分析。在第十五届CM SIGACT-SIGPLAN编程语言原理研讨会上(1988年1月),第285-293页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  29. 29SE:arthNO,M.和FEELEY,M.存储使用分析及其应用。1996年ACM SIGPLAN函数编程国际会议(1996年5月),第50-61页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  30. 30StaYERS,O.控制方案中的流程分析。在ACM SIGPLAN编程语言、设计和实现会议(1988年6月)上,第164-174页。]]谷歌学者谷歌学者数字图书馆数字图书馆
  31. 31TOFTE,M.和TALPIN,J.-P.多态类型语言中的堆栈分配理论。哥本哈根大学计算机科学系技术代表93/15,1993年7月9日。]]谷歌学者谷歌学者

索引术语

  1. 面向对象语言的转义分析:在Java中的应用

                  建议

                  评论

                  登录选项

                  检查您是否可以通过登录凭据或您的机构访问本文。

                  登录

                  完全访问权限

                  • 发布于

                    封面图片ACM会议
                    OOPSLA’99:第14届ACM SIGPLAN面向对象编程、系统、语言和应用会议记录
                    1999年10月
                    462页
                    国际标准图书编号:1581132387
                    内政部:10.1145/320384

                    版权所有©1999 ACM

                    如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人拥有的本作品组件的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护]

                    出版商

                    计算机协会

                    美国纽约州纽约市

                    出版历史

                    • 出版:1999年10月1日

                    权限

                    请求有关此文章的权限。

                    请求权限

                    检查更新

                    限定符

                    • 第条

                    接受率

                    1999年OOPSLA纸张接受率30属于152提交文件,20%总体验收率268属于1,244提交文件,22%

                    即将召开的会议

                    24年飞溅
                    ACM SIGPLAN系统、编程、语言和应用国际会议:人文软件
                    2024年10月20日至25日
                    帕萨迪纳,加利福尼亚州,美国

                  PDF格式

                  以PDF文件查看或下载。

                  PDF格式

                  电子阅读器

                  使用eReader联机查看。

                  电子阅读器