Filters








3,931 Hits in 5.6 sec

Incrementalized pointer and escape analysis

Frédéric Vivien, Martin Rinard
2001 SIGPLAN notices  
We present a new pointer and escape analysis. Instead of analyzing the whole program, the algorithm incrementally analyzes only those parts of the program that may deliver useful results.  ...  Our experimental results show that almost all of the objects are allocated at a small number of allocation sites and that an incremental analysis of a small region of the program surrounding each site  ...  We thank David Karger and Ron Rivest for interesting discussions regarding potential analysis policies, and the anonymous reviewers for their helpful and exceptionally competent feedback.  ... 
doi:10.1145/381694.378804 fatcat:e4u537osn5et3mgxck4dnuh3ru

Incrementalized pointer and escape analysis

Frédéric Vivien, Martin Rinard
2001 Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation - PLDI '01  
We present a new pointer and escape analysis. Instead of analyzing the whole program, the algorithm incrementally analyzes only those parts of the program that may deliver useful results.  ...  Our experimental results show that almost all of the objects are allocated at a small number of allocation sites and that an incremental analysis of a small region of the program surrounding each site  ...  We thank David Karger and Ron Rivest for interesting discussions regarding potential analysis policies, and the anonymous reviewers for their helpful and exceptionally competent feedback.  ... 
doi:10.1145/378795.378804 dblp:conf/pldi/VivienR01 fatcat:qorhbngu6zbjvnm2wytrkwxwxq

Analyzing memory ownership patterns in C libraries

Tristan Ravitch, Ben Liblit
2013 SIGPLAN notices  
Resource lifetime management bugs can lead to leaks and crashes, which are more difficult to debug in polyglot programs than monoglot programs.  ...  While these analyses are unsound and incomplete, we demonstrate that they significantly reduce the manual annotation burden for a suite of fifteen open source libraries.  ...  Many use auxiliary functions, particularly those that rely on atomic increments and decrements.  ... 
doi:10.1145/2555670.2464162 fatcat:prkbtnl35nb6vl64wzzvh6hgri

Analyzing memory ownership patterns in C libraries

Tristan Ravitch, Ben Liblit
2013 Proceedings of the 2013 international symposium on International symposium on memory management - ISMM '13  
Resource lifetime management bugs can lead to leaks and crashes, which are more difficult to debug in polyglot programs than monoglot programs.  ...  While these analyses are unsound and incomplete, we demonstrate that they significantly reduce the manual annotation burden for a suite of fifteen open source libraries.  ...  Many use auxiliary functions, particularly those that rely on atomic increments and decrements.  ... 
doi:10.1145/2491894.2464162 dblp:conf/iwmm/RavitchL13 fatcat:amwko6zrzbf5vaxpea7w5wjzpa

Abstract Interpretation and Object-oriented Programming: Quo Vadis?

Francesco Logozzo, Agostino Cortesi
2005 Electronical Notes in Theoretical Computer Science  
Abstract Interpretation is a theory for static analysis of software systems that formalizes the notion of approximation and abstraction in a mathematical setting, and which is independent of particular  ...  languages and applications.  ...  Escape analysis is useful for program optimization, and in particular for (i) stack-allocating objects and (ii) removing synchronization. Escape analysis is strictly related to pointer analysis.  ... 
doi:10.1016/j.entcs.2005.01.024 fatcat:evy4mqcu4jf7zpvmcvvd3qtige

Efficient memory management for concurrent programs that use message passing

Konstantinos Sagonas, Jesper Wilhelmsson
2006 Science of Computer Programming  
The allocator is guided by a static analysis which speculatively allocates data possibly used as messages in a shared memory area.  ...  The incremental collector imposes no overhead on the mutator, requires no costly barrier mechanisms, has a relatively small space overhead, and can be scheduled on the basis of either a time or a work  ...  Acknowledgements We sincerely thank Richard Jones, Marc Shapiro, and an anonymous reviewer of this special issue for requests for clarification, constructive criticism, and numerous detailed suggestions  ... 
doi:10.1016/j.scico.2006.02.006 fatcat:luarrhlgrrg6xdycxy2yid25i4

Free-Me

Samuel Z. Guyer, Kathryn S. McKinley, Daniel Frampton
2006 SIGPLAN notices  
It combines a lightweight pointer analysis with liveness information that detects when short-lived objects die. Our approach differs from stack and region allocation in two crucial ways.  ...  The compiler's free-me analysis identifies when objects become unreachable and inserts calls to free.  ...  Acknowledgments We would like to thank Steve Blackburn for getting us started, the entire Jikes RVM research team for making their system publicly available, and Mike Bond and Gene Novark for their suggestions  ... 
doi:10.1145/1133255.1134024 fatcat:wvhcxjmzbfamzdtls3oa7pnoh4

Free-Me

Samuel Z. Guyer, Kathryn S. McKinley, Daniel Frampton
2006 Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation - PLDI '06  
It combines a lightweight pointer analysis with liveness information that detects when short-lived objects die. Our approach differs from stack and region allocation in two crucial ways.  ...  The compiler's free-me analysis identifies when objects become unreachable and inserts calls to free.  ...  Acknowledgments We would like to thank Steve Blackburn for getting us started, the entire Jikes RVM research team for making their system publicly available, and Mike Bond and Gene Novark for their suggestions  ... 
doi:10.1145/1133981.1134024 dblp:conf/pldi/GuyerMF06 fatcat:eshc4k27rrfmtlzs3kophwmurm

Generational reference counting: a reduced-communication distributed storage reclamation scheme

B. Goldberg
1989 SIGPLAN notices  
The communication overhead for generational reference counting is one message for each copy of an interprocessor reference (pointer).  ...  In this paper, we present the generational reference counting algorithm, prove it correct, and discuss some refinements that make it more efficient.  ...  Traditionally, escape analysis has been used to determine when an object is returned ("escapes") from the procedure in which it was created.  ... 
doi:10.1145/74818.74846 fatcat:a7fayd7ptzhhndrv3ipzd2z4me

Generational reference counting: a reduced-communication distributed storage reclamation scheme

B. Goldberg
1989 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation - PLDI '89  
The communication overhead for generational reference counting is one message for each copy of an interprocessor reference (pointer).  ...  In this paper, we present the generational reference counting algorithm, prove it correct, and discuss some refinements that make it more efficient.  ...  Traditionally, escape analysis has been used to determine when an object is returned ("escapes") from the procedure in which it was created.  ... 
doi:10.1145/73141.74846 dblp:conf/pldi/Goldberg89 fatcat:clxzpcpxgvenvf6hxmowh6qmkq

RT-LAGC

Isabella Stilkerich, Michael Strotz, Christoph Erhardt, Michael Stilkerich
2014 Proceedings of the 12th International Workshop on Java Technologies for Real-time and Embedded Systems - JTRES '14  
Moreover, the execution properties of an exemplary application were improved by jino's extended escape analysis.  ...  RT-LAGC is evaluated against KESO's purely incremental non-fragmentationtolerant GC called IRRGC and a throughput-optimized stopthe-world collector named CBGC.  ...  SCHR 603/9-1 and SFB/TR 89.  ... 
doi:10.1145/2661020.2661031 dblp:conf/jtres/StilkerichSES14 fatcat:hrxhwuublfal5gpvtxtjbgmzai

Write barrier elision for concurrent garbage collectors

Martin T. Vechev, David F. Bacon
2004 Proceedings of the 4th international symposium on Memory management - ISMM '04  
On average, 54% of incremental barriers and 83% of snapshot barriers are unnecessary.  ...  We show conditions under which write barriers are redundant, and describe how these conditions can be applied to both incremental update or snapshot-at-the-beginning barriers.  ...  to proceed with the problem and for providing thoughtful feedback at various stages, to Umar Janjua and Alan Lawrence for the numerous discussions.  ... 
doi:10.1145/1029873.1029876 dblp:conf/iwmm/VechevB04 fatcat:btr6fnfkarec5art2kvlncvb7a

Escape analysis in the context of dynamic compilation and deoptimization

Thomas Kotzmann, Hanspeter Mössenböck
2005 Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments - VEE '05  
This paper presents a new intraprocedural and interprocedural algorithm for escape analysis in the context of dynamic compilation where the compiler has to cope with dynamic class loading and deoptimization  ...  The analysis is used for scalar replacement of fields and synchronization removal, as well as for stack allocation of objects and fixedsized arrays.  ...  ACKNOWLEDGMENTS We want to thank Kenneth Russell, Thomas Rodriguez and David Cox from the Java HotSpot TM compiler group at Sun Microsystems for the close collaboration and the continuous support of our  ... 
doi:10.1145/1064979.1064996 dblp:conf/vee/KotzmannM05 fatcat:7fsv7wvqyvd6lpafks2i7gz6re

The Backstroke framework for source level reverse computation applied to parallel discrete event simulation

George Vulov, Cong Hou, Richard Vuduc, Richard Fujimoto, Daniel Quinlan, David Jefferson
2011 Proceedings of the 2011 Winter Simulation Conference (WSC)  
It is built using the ROSE open-source compiler infrastructure, and handles complex C++ features including pointers and pointer types, arrays, function and method calls, class types, inheritance, polymorphism  ...  Backstroke also introduces new program inversion techniques based on advanced compiler analysis tools built into ROSE.  ...  However, the performance of region-based methods in the presence of pointer arithmetic and void* pointers depends on the strength of the static analysis used.  ... 
doi:10.1109/wsc.2011.6147998 dblp:conf/wsc/VulovHVFQJ11 fatcat:nx4e3lrl6nhljpvivvsggwtcri

Cloning-based context-sensitive pointer alias analysis using binary decision diagrams

John Whaley, Monica S. Lam
2004 SIGPLAN notices  
We used this approach to develop a variety of context-sensitive algorithms including side effect analysis, type analysis, and escape analysis.  ...  This paper shows that pointer analysis, and many other queries and algorithms, can be described succinctly and declaratively using Datalog, a logic programming language.  ...  Acknowledgments This material is based upon work supported by the National Science Foundation under Grant No. 0086160 and an NSF Graduate Student Fellowship.  ... 
doi:10.1145/996893.996859 fatcat:eed7ymqlpfedvj3taqxwr45kra
« Previous Showing results 1 — 15 out of 3,931 results