| Understanding memory allocation of scheme programs |
| Full text |
Pdf
(821 KB)
|
| Source
|
International Conference on Functional Programming
archive
Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
table of contents
Pages: 245 - 256
Year of Publication: 2000
ISBN:1-58113-202-6
Also published in ...
|
|
Authors
|
|
Manuel Serrano
|
Université de Nice Sophia-Antipolis, Route des Colles, B.P. 145, F-06903 Sophia-Antipolis, CEDEX
|
|
Hans-J. Boehm
|
Hewlett-Packard Company, 1501 Page Mill Road, MS 1U-17, Palo Alto, CA
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 6, Downloads (12 Months): 27, Citation Count: 6
|
|
|
ABSTRACT
Memory is the performance bottleneck of modern architectures. Keeping memory consumption as low as possible enables fast and unobtrusive applications. But it is not easy to estimate the memory use of programs implemented in functional languages, due to both the complex translations of some high level constructs, and the use of automatic memory managers.To help understand memory allocation behavior of Scheme programs, we have designed two complementary tools. The first one reports on frequency of allocation, heap configurations and on memory reclamation. The second tracks down memory leaks1. We have applied these tools to our Scheme compiler, the largest Scheme program we have been developing. This has allowed us to drastically reduce the amount of memory consumed during its bootstrap process, without requiring much development time.Development tools will be neglected unless they are both conveniently accessible and easy to use. In order to avoid this pitfall, we have carefully designed the user interface of these two tools. Their integration into a real programming environment for Scheme is detailed in the paper.
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
|
A. Appel, F. Duba, D. MacQueen, and A Tomach. Profiling in the Presence of Optimization and Garbage Collection.Technical Report CS-TR-197-88, Princeton University,November 1988.
|
 |
2
|
|
| |
3
|
L. Cannon, R. Elliot, L. Kircho, J. Miller, J. Milner, R. Mitze, E. Schan, N. Whittinton, D. Spencer, H. Keppel, and M. Brader. Recommended C Style and Coding Standards, June 1990.
|
| |
4
|
|
| |
5
|
J. Fenlason and B. Baccala. GNU-gprof: user manual. Technical report, Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA, 1997.
|
 |
6
|
Susan L. Graham , Peter B. Kessler , Marshall K. Mckusick, Gprof: A call graph execution profiler, Proceedings of the 1982 SIGPLAN symposium on Compiler construction, p.120-126, June 23-25, 1982, Boston, Massachusetts, United States
|
| |
7
|
H. Abelson , R. K. Dybvig , C. T. Haynes , G. J. Rozas , N. I. Adams Iv , D. P. Friedman , E. Kohlbecker , G. L. Steele, Jr. , D. H. Bartley , R. Halstead , D. Oxley , G. J. Sussman , G. Brooks , C. Hanson , K. M. Pitman , M. Wand, Revised Report on the Algorithmic Language Scheme, Higher-Order and Symbolic Computation, v.11 n.1, p.7-105, August 1998
[doi> 10.1023/A:1010051815785]
|
| |
8
|
|
| |
9
|
S. Peyton Jones and S. Marlow. Secrets of the Glasgow Haskell Compiler Inliner. InImplementation of Declarative Languages, Paris, France, September 1999.
|
| |
10
|
|
 |
11
|
Niklas Röjemo , Colin Runciman, Lag, drag, void and use—heap profiling and space-efficient compilation revisited, Proceedings of the first ACM SIGPLAN international conference on Functional programming, p.34-41, May 24-26, 1996, Philadelphia, Pennsylvania, United States
|
| |
12
|
|
| |
13
|
C. Runciman and N. Rojemo. New dimensions in heap pro~ling. Journal of Functional Programming, 6, 1996.
|
| |
14
|
C. Runciman and D. Wakeling. Heap profiling of lazy functional programs. Journal of Functional Programming, 3(2):217{245, 1993.
|
| |
15
|
|
| |
16
|
|
 |
17
|
Patrick M. Sansom , Simon L. Peyton Jones, Time and space profiling for non-strict, higher-order functional languages, Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.355-366, January 23-25, 1995, San Francisco, California, United States
[doi> 10.1145/199448.199531]
|
| |
18
|
|
| |
19
|
|
| |
20
|
B. Zorn and P. Hilnger. AMemory Allocation Profiler for C andLisp Programs. In Usenix conference, pages 223-237, 1998.
|
CITED BY 6
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Robert Bruce Findler , John Clements , Cormac Flanagan , Matthew Flatt , Shriram Krishnamurthi , Paul Steckler , Matthias Felleisen, DrScheme: a programming environment for Scheme, Journal of Functional Programming, v.12 n.2, p.159-182, March 2002
|
|
|
|
|