Optimistic stack allocation for java-like languages

  • Authors:
  • Erik Corry

  • Affiliations:
  • Esmertec AG

  • Venue:
  • Proceedings of the 5th international symposium on Memory management
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Stack allocation of objects offers more efficient use of cache memories on modern computers, but finding objects that can be safely stack allocated is difficult, as interprocedural escape analysis is imprecise in the presence of virtual method dispatch and dynamic class loading. We present a new technique for doing optimistic stack allocation of objects. Our technique does not require interprocedural analysis and is effective in the presence of dynamic class loading, reflection and exception handling. Moreover, we usually achieve higher proportions of stack allocated data than static strategies. In this paper we present optimistic stack-allocation for Java-like languages. For experiments we use traces of running Java programs to drive simulations of various garbage collection and allocation strategies.