The results of: Profiling large-scale lazy functional programs
At the High Performance Functional Computing conference in Denver [MoJ95] a new approach to profiling was presented, this allowed the complete set of program costs to be recorded in so-called cost centre stacks. It was proposed that these program costs could then be manipulated using a post-processor which would speed up the task of profiling a Haskell program and would also produce more accurate profiling results.
This paper presents the results of using this new profiling tool in the analysis of a number of Haskell programs. The overheads of the scheme are discussed and the benefits of this new system are considered. The paper also outlines how this approach can be modified to trace and debug Haskell programs.
KeywordsTotal Execution Time Program Cost Cost Centre Large Program Flat Profile
Unable to display preview. Download preview PDF.
- [CCP95]Clayman, S.; Clack, C.; Parrott, D. J.: Lexical Profiling: Theory and Practice, Journal of Functional Programming, Volume 5, Part 2, 1995Google Scholar
- [LGa94]Long, D.; Garigliano, G.: Reasoning by Analogy and Causality: A Model and Application, Ellis Horwood, 1994Google Scholar
- [GKK82]Graham, S. L.; Kessler, P. B.; Kusick, M. K.: gprof: a call graph execution profiler, ACM Sigplan Notices, 17(6):120–126, Symposium on Computer Construction, June 1982Google Scholar
- [Jar96]Jarvis, S. A.: Profiling Large-scale Lazy Functional Programs, Ph.D. Thesis, University of Durham, 1996Google Scholar
- [MoJ95]Morgan, R. G.; Jarvis, S. A.: Profiling Large-scale Lazy Functional Programs, In Proceedings of High Performance Functional Computing, A. P. W. Bohm and J. T. Feo Editors, Lawrence Livermore National Laboratory, USA, pp. 222–234, April 1995Google Scholar
- [Par92]Partain, W.: The nofib Benchmark Suite of Haskell Programs, Department of Computer Science, University of Glasgow, 1992Google Scholar
- [RuW93]Runciman, C.; Wakeling, D.: Heap Profiling of Lazy Functional Programs, Journal of Functional Programming, Volume 3, Part 2, 1993Google Scholar
- [SaP95]Sansom, P. M.; Peyton Jones, S. L.: Time and space profiling for non-strict, higher-order functional languages, 22nd ACM Symposium on Principles of Programming Languages, San Francisco, California, January 1995Google Scholar