BlanchetOOPSLA99
Bruno Blanchet
Back to publications
Bruno Blanchet.
Escape Analysis for Object Oriented Languages.
Application to Java(TM).
In Conference on Object-Oriented Programming, Systems, Languages
and Applications (OOPSLA'99),
pages 20-34, Denver, Colorado, November 1999.
Copyright
Copyright © 1999 by the Association for Computing Machinery, Inc.
Permission to make digital/hard copies of part or all of this material
for personal or classroom use is granted without fee provided that the
copies are not made or distributed for profit or commercial advantage
and that copies bear this notice and the full citation on the first
page. Copyrights for components of this work owned by others than ACM
must be honored. Abstracting with credit is permitted. To copy
otherwise, to republish, to post on servers or to redistribute to
lists, requires prior specific permission and/or a fee. Request
permissions from Publications Dept, ACM Inc., fax +1(212)869-0481, or
permissions@acm.org.
If you agree with this copyright notice, you can get the paper:
Get the paper
.ps.gz, 138 Kb
Links
Official ACM version (you can download the full text from there):
Abstract
Escape analysis is a static analysis that determines whether the
lifetime of data exceeds its static scope.
The main originality of our escape analysis is that it determines
precisely the effect of assignments, which is necessary to apply it to
object oriented languages with promising results, whereas previous
work applied it to functional languages and were very imprecise on
assignments. Our implementation analyses the full Java Language.
We have applied our analysis to stack allocation and synchronization
elimination. We manage to stack allocate 13% to 95% of data, eliminate
more than 20% of synchronizations on most programs (94% and 99% on two
examples) and get up to 44% speedup (21% on average). Our detailed
experimental study on large programs shows that the improvement comes
more from the decrease of the garbage collection and allocation times
than from improvements on data locality, contrary to what happened for
ML.
Bibtex
@INPROCEEDINGS{BlanchetOOPSLA99,
AUTHOR = {Bruno Blanchet},
TITLE = {Escape {A}nalysis for {O}bject {O}riented {L}anguages. {A}pplication to {J}ava({TM})},
BOOKTITLE = {Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA'99)},
PAGES = {20--34},
YEAR = 1999,
ADDRESS = {Denver, Colorado},
MONTH = NOV
}
E-mail/Courrier électronique : Bruno.Blanchet@trap-inria.fr (remove trap-)