Abstract
The full details of a parallel computation can be very complex. To understand and improve performance one useful resource is a log-file recording all the computational events that change the number or status of parallel tasks. Raw log-files are not easy reading for the programmer, so profiling tools present only graphical summary charts. These charts sometimes show just what the programmer needs to know, but they often become too crowded, or fail to show enough, or both. Moreover, the charts are static so the programmer has little control over what is displayed. In this paper we discuss a tool that combines the advantages of graphical representation of computations with a query interface. The programmer interactively extracts specific information about the computation. Results of queries can be displayed in a graphical form; and parameters of subsequent queries can be specified by pointing within a past display.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
L. Augustsson and T. Johnsson. Parallel Graph Reduction with the <ν, G>-machine. In Proc. 1989 ACM Conference on Functional Programming Languages and Computer Architecture (FPLCA’ 89), pages 202–212, 1989.
P. Buneman, L. Libkin, V. Tannen, and L. Wong. Comprehension Syntax. SIGMOD Record, 23(1), 1994.
M. Carlsson and T. Hallgren. Fudgets-Purely Functional Processes with Applications to Graphical User Interfaces. PhD thesis, Department of Computer Science, Chalmers University of Technology, Sweden, 1998.
N. Charles and C. Runciman. Performance Monitoring. In Research Directions in Parallel Functional Programming. Springer-Verlag, 1999. In preparation.
P. P. Chen. The Entity-Relationship Model: Towards a Unified View of Data. IEEE Transactions on Data Base Systems, 1(1), 1976.
S. Finne, D. Leigen, E. Meijer, and S Peyton Jones. H/Direct: A Binary Foreign Language Interface for Haskell. In Proc. 3rd. International Conference on Functional Programming (ICFP’ 98), pages 153–162. ACM Press, 1998.
T. Hallgren and M. Carlsson. Programming with Fudgets. In Advanced Functional Programming, 1st. International School on Functional Programming Techniques, Båstad, Sweden, volume 925 of LNCS, pages 137–182. Springer-Verlag, 1995.
R. Halstead. Self-Describing Files + Smart Modules = Parallel Program Visualization. In Theory and Practice of Parallel Programming, volume 907 of LNCS. Springer-Verlag, 1994.
R. Halstead. Understanding the Performance of Parallel Symbolic Programs. In Parallel Symbolic Languages and Systems (Workshop Proceedings), volume 1068 of LNCS. Springer-Verlag, 1996.
K. Hammond, H-W. Loidl, and A. Partridge. Visualising Granularity in Parallel Programs: A Graphical Winnowing System for Haskell. In A.P.W. Bohm and J.T. Feo, editors, Proc. HPFC’95 — High Performance Functional Computing, pages 208–221, 1995.
K. Hammond, H-W. Loidl, and P. Trinder. Parallel Cost Centre Profiling. In Proc. 1997 Glasgow Workshop on Functional Programming, 1997.
S. Jarvis, S. Marlow, S Peyton Jones, and E. Wilcox. Standardising Compiler/Profiler Log Files. In K. Hammond, A.J.T. Davie, and C. Clack, editors, Draft Proc. 10th International Workshop on the Implementation of Functional Languages (IFL’ 98), London, England, pages 429–446, September 1998.
D. King, J. Hall, and P. Trinder. A Strategic Profiler for Glasgow Parallel Haskell. In This Proceedings, 1998.
S. Lei, K. Zang, and K.-C. Li. Experience with the Design of a Performance Tuning Tool for Parallel Programs. Journal of Systems Software, 39(1):27–37, 1997.
H-W. Loidl. GranSim User’s Guide, 1996. http://www.dcs.glasgow.ac.uk/fp/software/gransim/.
H-W. Loidl. Granularity in Large Scale Parallel Functional Programs. PhD thesis, Department of Computer Science, University of Glasgow, 1998.
R. Nikhil. An Incremental, Strongly-Typed, Database Query Language. PhD thesis, University of Pennsylvania, 1984.
Oracle Corporation, Belmont, California, USA. SQL Language, Reference Manual, Version 6.0, 1990.
J. C. Peterson, K. Hammond, L. Augustsson, B. Boutel, F. W. Burton, J. Fasel, A. D. Gordon, R. J. M. Hughes, P. Hudak, T. Johnsson, M. P. Jones, E. Meijer, S. L. Peyton Jones, A. Reid, and P. L. Wadler. Report on the Non-Strict Functional Language, Haskell, Version 1.4, Yale University, 1997. Available at http://haskell.org.
S. L. Peyton Jones, T. Nordin, and A. Reid. Green Card: a Foreign-Language Interface for Haskell. In Proc. of 2nd. Haskell Workshop, Amsterdam, 1997. Oregon Graduate Institute, 1997. http://www.dcs.gla.ac.uk/fp/software/green-card/.
D. Reed, R. Aydt, T. Madhyastha, R. Noe, K. Shields, and B. Schwartz. Scalable Performance Environments for Parallel Systems. In 6th. Distributed Memory Computing Conference (IEEE), 1991.
P. Roe. Parallel Programming using Functional Languages. PhD thesis, Glasgow University, UK, 1991.
C. Runciman and D. Wakeling. Profiling Parallel Functional Computations (Without Parallel Machines). In Proc. 1993 Glasgow Workshop on Functional Programming, pages 236–251. Springer-Verlag, 1993.
P. Trinder, K. Hammond, H.-W. Loidl, and S. L. Peyton Jones. Algorithm + Strategy = Parallelism. Journal of Functional Programming, 8(1):23–60, 1998.
P. W. Trinder, K. Hammond, J. S. Mattson, A. S. Partridge, and S. L. Peyton Jones. GUM: a Portable Parallel Implementation of Haskell. In Proc. PLDI’ 96, Philadelphia, Penn., pages 79–88, 1996.
R. P. Whittington. Logical Design. In [27], chapter 10. 1988.
R. P. Whittington. Database Systems Engineeering. Clarendon Press, Oxford, 1998.
A. Yu and J. Chen. The POSTGRES95 User Manual, Version 1.0, 1995.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Charles, N., Runciman, C. (1999). An Interactive Approach to Profiling Parallel Functional Programs. In: Hammond, K., Davie, T., Clack, C. (eds) Implementation of Functional Languages. IFL 1998. Lecture Notes in Computer Science, vol 1595. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48515-5_2
Download citation
DOI: https://doi.org/10.1007/3-540-48515-5_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66229-7
Online ISBN: 978-3-540-48515-5
eBook Packages: Springer Book Archive