Storage Use Analysis and its Applications (1996)
| Venue: | In Proceedings of the 1996 ACM SIGPLAN International Conference on Functional Programming |
| Citations: | 27 - 3 self |
BibTeX
@INPROCEEDINGS{Serrano96storageuse,
author = {Manuel Serrano and Marc Feeley},
title = {Storage Use Analysis and its Applications},
booktitle = {In Proceedings of the 1996 ACM SIGPLAN International Conference on Functional Programming},
year = {1996},
pages = {50--61},
publisher = {ACM Press}
}
Years of Citing Articles
OpenURL
Abstract
In this paper we present a new program analysis method which we call Storage Use Analysis. This analysis deduces how objects are used by the program and allows the optimization of their allocation. This analysis can be applied to both statically typed languages (e.g. ML) and latently typed languages (e.g. Scheme). It handles side-effects, higher order functions, separate compilation and does not require cps transformation. We show the application of our analysis to two important optimizations: stack allocation and unboxing. The first optimization replaces some heap allocations by stack allocations for user and system data storage (e.g. lists, vectors, procedures). The second optimization avoids boxing some objects. This analysis and associated optimizations have been implemented in the Bigloo Scheme/ML compiler. Experimental results show that for many allocation intensive programs we get a significant speedup. In particular, numerically intensive programs are almost 20 times faster be...







