ACM Home Page
Please provide us with feedback. Feedback
Parametric heap usage analysis for functional programs
Full text PdfPdf (427 KB)
Source
International Symposium on Memory Management archive
Proceedings of the 2009 international symposium on Memory management table of contents
Dublin, Ireland
SESSION: Paper session 5 table of contents
Pages 139-148  
Year of Publication: 2009
ISBN:978-1-60558-347-1
Authors
Leena Unnikrishnan  Stony Brook University, Stony Brook, USA
Scott D. Stoller  Stony Brook University, Stony Brook, USA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 30,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1542431.1542451
What is a DOI?

ABSTRACT

This paper presents an analysis that derives a formula describing the worst-case live heap space usage of programs in a functional language with automated memory management (garbage collection). First, the given program is automatically transformed into bound functions that describe upper bounds on the live heap space usage and other related space metrics in terms of the sizes of function arguments. The bound functions are simplified and rewritten to obtain recurrences, which are then solved to obtain the desired formulas characterizing the worst-case space usage. These recurrences may be difficult to solve due to uses of the maximum operator. We give methods to automatically solve categories of such recurrences. Our analysis determines and exploits monotonicity and monotonicity-like properties of bound functions to derive upper bounds on heap usage, without considering behaviors of the program that cannot lead to maximal space usage.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
2
3
 
4
D. Aspinall, S. Gilmore, M. Hofmann, D. Sannella, and I. Stark. Mobile resource guarantees for smart devices. In Proceedings of the International Workshop on Construction and Analysis of Safe, Secure and Interoperable Smart Devices (CASSIS), volume 3362 of LNCS, pages 1--26. Springer, 2005.
5
 
6
R. Bagnara, A. Pescetti, A. Zaccagnini, E. Zaffanella, and T. Zolo. PURRS: The Parma University's recurrence relation solver. http: //www.cs.unipr.it/purrs.
 
7
8
 
9
D. Cachera, T. Jensen, D. Pichardie, and G. Schneider. Certified memory usage analysis. In Formal Methods 05, volume 3582 of LNCS, pages 91--106. Springer-Verlag, 2005.
10
 
11
W.-N. Chin, H. H. Nguyen, S. Qin, and M. Rinard. Memory usage verification for oo programs. In SAS 05, pages 70--86. Springer, 2005.
12
13
14
15
16
17
18
19
 
20
 
21
M. B. Monagan, K. O. Geddes, K. M. Heal, G. Labahn, S. M. Vorkoetter, J. McCarron, and P. DeMarco. Maple 10 Programming Guide. Maplesoft, 2005.
22
 
23
 
24
L. Unnikrishnan. Automatic Live Memory Bound Analysis for High-Level Languages. PhD thesis, Stony Brook University, 2008. Available at http://www.cs.sunysb.edu/~leena/thesis.pdf.
 
25
26
 
27

Collaborative Colleagues:
Leena Unnikrishnan: colleagues
Scott D. Stoller: colleagues