| Space profiling for parallel functional programs |
| Full text |
Pdf
(340 KB)
|
Source
|
International Conference on Functional Programming
archive
Proceeding of the 13th ACM SIGPLAN international conference on Functional programming
table of contents
Victoria, BC, Canada
SESSION: Session 10
table of contents
Pages 253-264
Year of Publication: 2008
ISBN:978-1-59593-919-7
Also published in ...
|
|
Authors
|
|
Daniel Spoonhower
|
Carnegie Mellon University, Pittsburgh, PA, USA
|
|
Guy E. Blelloch
|
Carnegie Mellon University, Pittsburgh, PA, USA
|
|
Robert Harper
|
Carnegie Mellon University, Pittsburgh, PA, USA
|
|
Phillip B. Gibbons
|
Intel Research Pittsburgh, Pittsburgh, PA, USA
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 11, Downloads (12 Months): 112, Citation Count: 2
|
|
|
ABSTRACT
This paper presents 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.
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
|
Shail Aditya, Arvind, Jan-Willem Maessen, and Lennart Augustsson. Semantics of pH: A parallel dialect of Haskell. Technical Report Computation Structures Group Memo 377, MIT, June 1995.
|
| |
2
|
Andrew W. Appel, Bruce Duba, and David B. MacQueen. Profiling in the presence of optimization and garbage collection. Technical Report CS-TR-197-88, Princeton University, November 1988.
|
 |
3
|
|
 |
4
|
|
 |
5
|
|
| |
6
|
|
| |
7
|
|
 |
8
|
|
| |
9
|
|
 |
10
|
|
 |
11
|
|
| |
12
|
|
 |
13
|
|
| |
14
|
|
| |
15
|
Robert Ennals. Adaptive Evaluation of Non-Strict Programs. PhD thesis, University of Cambridge, 2004.
|
 |
16
|
Matthew Fluet , Nic Ford , Mike Rainey , John Reppy , Adam Shaw , Yingqi Xiao, Status report: the manticore project, Proceedings of the 2007 workshop on Workshop on ML, October 05-05, 2007, Freiburg, Germany
[doi> 10.1145/1292535.1292539]
|
 |
17
|
|
| |
18
|
Jörgen Gustavsson and David Sands. A foundation for space-safe transformations of call-by-need programs. In Proc. of Workshop on Higher Order Operational Techniques in Semantics, number volume 26 of Electronic Notes in Theoretical Computer Science, September 1999.
|
| |
19
|
Kevin Hammond and Simon L. Peyton Jones. Profiling scheduling strategies on the GRIP multiprocessor. In Int. Workshop on the Parallel Implementation of Funct. Languages, pages 73-98, RWTH Aachen, Germany, September 1992.
|
| |
20
|
Kevin Hammond, Hans-Wolfgang Loidl, and Andrew S. Partridge. Visualising Granularity in Parallel Programs: A Graphical Winnowing System for Haskell. In A. P. Wim Böhm and John T. Feo, editors, High Performance Functional Computing, pages 208--221, 1995.
|
| |
21
|
|
| |
22
|
|
 |
23
|
|
 |
24
|
|
| |
25
|
Colin Runciman and David Wakeling. Heap profiling of lazy functional programs. J. Funct. Program., 3 (2): 217--245, 1993.
|
| |
26
|
Colin Runciman and David Wakeling. Profiling Parallel Functional Computations (Without Parallel Machines). In Functional Programming, Glasgow '93, pages 236--251. Springer-Verlag, 1993.
|
| |
27
|
David Sands. Calculi for Time Analysis of Functional Programs. PhD thesis, Department of Computing, Imperial College, University of London, September 1990.
|
| |
28
|
|
 |
29
|
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]
|
 |
30
|
|
| |
31
|
Daniel Spoonhower, Guy E. Blelloch, Robert Harper, and Phillip B. Gibbons. Space profiling for parallel functional programs. Technical Report CMU-CS-08-110, Carnegie Mellon University, April 2008.
|
 |
32
|
|
CITED BY 2
|
|
|
|
|
Daniel Spoonhower , Guy E. Blelloch , Phillip B. Gibbons , Robert Harper, Beyond nested parallelism: tight bounds on work-stealing overheads for parallel futures, Proceedings of the twenty-first annual symposium on Parallelism in algorithms and architectures, August 11-13, 2009, Calgary, AB, Canada
|
|