Hostname: page-component-6766d58669-rxg44 Total loading time: 0 Render date: 2026-05-14T12:32:53.921Z Has data issue: false hasContentIssue false

Space profiling for parallel functional programs

Published online by Cambridge University Press:  03 September 2010

DANIEL SPOONHOWER
Affiliation:
School of Computer Science, Carnegie Mellon University, 5000 Forbes Avenue, Pittsburgh, PA 15213, USA (e-mail: spoons@cs.cmu.edu, blelloch@cs.cmu.edu, rwh@cs.cmu.edu)
GUY E. BLELLOCH
Affiliation:
School of Computer Science, Carnegie Mellon University, 5000 Forbes Avenue, Pittsburgh, PA 15213, USA (e-mail: spoons@cs.cmu.edu, blelloch@cs.cmu.edu, rwh@cs.cmu.edu)
ROBERT HARPER
Affiliation:
School of Computer Science, Carnegie Mellon University, 5000 Forbes Avenue, Pittsburgh, PA 15213, USA (e-mail: spoons@cs.cmu.edu, blelloch@cs.cmu.edu, rwh@cs.cmu.edu)
PHILLIP B. GIBBONS
Affiliation:
Intel Labs Pittsburgh, 4720 Forbes Avenue, Suite 410, Pittsburgh, PA 15213, USA (e-mail: phillip.b.gibbons@intel.com)
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the 'Save PDF' action button.

We present a semantic space profiler for parallel functional programs. Building on previous work in sequential profiling, our tools help programmers to relate runtime resource use back to program source code. Unlike many profiling tools, our profiler is based on a cost semantics. This provides a means to reason about performance without requiring a detailed understanding of the compiler or runtime system. It also provides a specification for language implementers. This is critical in that it enables us to separate cleanly the performance of the application from that of the language implementation. Some aspects of the implementation can have significant effects on performance. Our cost semantics enables programmers to understand the impact of different scheduling policies while hiding many of the details of their implementations. We show applications where the choice of scheduling policy has asymptotic effects on space use. We explain these use patterns through a demonstration of our tools. We also validate our methodology by observing similar performance in our implementation of a parallel extension of Standard ML.

Information

Type
Articles
Copyright
Copyright © Cambridge University Press 2010
Submit a response

Discussions

No Discussions have been published for this article.