Nothing Special   »   [go: up one dir, main page]

skip to main content
article

gprof: a call graph execution profiler

Published: 01 April 2004 Publication History

Abstract

We extended the UNIX® system's profiler by gathering arcs in the call graph of a program. Here is it 20 years later and this profiler is still in daily use. Why is that? It's not because there aren't well-known areas for improvement.Large complex programs are composed of many small routines that implement abstractions for the routines that call them. To be useful, an execution profiler must attribute execution time in a way that is significant for the logical structure of a program as well as for its textual decomposition. This data must then be displayed to the user in a convenient and informative way. The gprof profiler accounts for the running time of called routines in the running time of the routines that call them. The design and use of this profiler is described.

References

[1]
S. L. Graham, R. R. Henry, and R. A. Schulman, "An Experiment in Table Drive Code Generation", SIGPLAN '82 Symposium on Compiler Construction, June, 1982.
[2]
M. K. McKusick, "Twenty Years of Berkeley Unix: From AT&T-Owned to Freely Redistributable", in Open Sources: Voices from the Open Source Revolution, O'Reilly, January, 1999. http://www.oreilly.com/catalog/opensources/book/kirkmck.html
[3]
"prof", Unix Programmer's Manual, Section 1, Bell Laboratories, Murray Hill, NJ, January 1979.
[4]
S. L. Graham, P. B. Kessler, and M. K. McKusick, "An execution profiler for modular programs", Software - Practice & Experience, 13(8), pp. 671--685, August 1983.
[5]
R. E. Tarjan, "Depth first search and linear graph algorithm", SIAM Journal on Computing, Volume 1, Number 2, pp. 146--160, 1972.
[6]
Sun Microsystems, Inc. "Program Performance Analysis Tools", in Forte Developer 7 Manual, Part number 816-2458-10, May 2002 Revision A. http://docs.sun.com/sources/816-2458/index.html.
[7]
GNU gprof, http://www.gnu.org/manual/gprof-2.9.1/gprof.html, 1998.
[8]
{Bentley81} Bentley, J. L., "Writing Efficient Code", Department of Computer Science, Carnegie-Mellon University, Pittsburgh, Pennsylvania, CMU-CS-81-116, 1981.
[9]
{Graham82} Graham, S. L., Henry, R. R., Schulman, R. A., "An Experiment in Table Driven Code Generation", SIGPLAN '82 Symposium on Compiler Construction, June, 1982.
[10]
{Joy79} Joy, W. N., Graham, S. L., Haley, C. B. "Berkeley Pascal User's Manual", Version 1.1, Computer Science Division University of California, Berkeley, CA. April 1979.
[11]
{Knuth71} Knuth, D. E. "An empirical study of FORTRAN programs", Software - Practice and Experience, 1, 105--133. 1971
[12]
{Satterthwaite72} Satterthwaite, E. "Debugging Tools for High Level Languages", Software - Practice and Experience, 2, 197--217, 1972
[13]
{Tarjan72} Tarjan, R. E., "Depth first search and linear graph algorithm," SIAM J. Computing 1:2, 146--160, 1972.
[14]
{Unix} Unix Programmer's Manual, "prof command", section 1, Bell Laboratories, Murray Hill, NJ. January 1979.

Cited By

View all
  • (2024)Eliminating eBPF Tracing Overhead on Untraced ProcessesProceedings of the ACM SIGCOMM 2024 Workshop on eBPF and Kernel Extensions10.1145/3672197.3673431(16-22)Online publication date: 4-Aug-2024
  • (2024)Cyclebite: Extracting Task Graphs From Unstructured Compute-ProgramsIEEE Transactions on Computers10.1109/TC.2023.332750473:1(221-234)Online publication date: 1-Jan-2024
  • (2024)Parallel Deployment and Performance Analysis of a Multi-Hop Routing Protocol for 5G Backhaul Networks Using Cloud and HPC PlatformsIEEE Access10.1109/ACCESS.2024.335513012(16696-16714)Online publication date: 2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 39, Issue 4
20 Years of the ACM SIGPLAN Conference on Programming Language Design and Implementation 1979-1999: A Selection
April 2004
673 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/989393
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 April 2004
Published in SIGPLAN Volume 39, Issue 4

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)30
  • Downloads (Last 6 weeks)3
Reflects downloads up to 17 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Eliminating eBPF Tracing Overhead on Untraced ProcessesProceedings of the ACM SIGCOMM 2024 Workshop on eBPF and Kernel Extensions10.1145/3672197.3673431(16-22)Online publication date: 4-Aug-2024
  • (2024)Cyclebite: Extracting Task Graphs From Unstructured Compute-ProgramsIEEE Transactions on Computers10.1109/TC.2023.332750473:1(221-234)Online publication date: 1-Jan-2024
  • (2024)Parallel Deployment and Performance Analysis of a Multi-Hop Routing Protocol for 5G Backhaul Networks Using Cloud and HPC PlatformsIEEE Access10.1109/ACCESS.2024.335513012(16696-16714)Online publication date: 2024
  • (2023)Parallelized domain decomposition for multi-dimensional Lagrangian random walk mass-transfer particle tracking schemesGeoscientific Model Development10.5194/gmd-16-833-202316:3(833-849)Online publication date: 3-Feb-2023
  • (2023)Toward a Simulation Model Complexity MeasureInformation10.3390/info1404020214:4(202)Online publication date: 24-Mar-2023
  • (2023)Traveler: Navigating Task Parallel Traces for Performance AnalysisIEEE Transactions on Visualization and Computer Graphics10.1109/TVCG.2022.320937529:1(788-797)Online publication date: Jan-2023
  • (2022)Acceleration strategies for large-scale sequential simulations using parallel neighbour searchComputers & Geosciences10.1016/j.cageo.2021.105027160:COnline publication date: 1-Mar-2022
  • (2022)Optimizing a medical image registration algorithm based on profiling data for real-time performanceMultimedia Tools and Applications10.1007/s11042-021-11699-x81:2(2603-2620)Online publication date: 1-Jan-2022
  • (2021)Xar-trekProceedings of the 22nd International Middleware Conference10.1145/3464298.3493388(104-118)Online publication date: 6-Dec-2021
  • (2021)Profiling HPC Applications with Low Overhead and High Accuracy2021 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Big Data & Cloud Computing, Sustainable Computing & Communications, Social Computing & Networking (ISPA/BDCloud/SocialCom/SustainCom)10.1109/ISPA-BDCloud-SocialCom-SustainCom52081.2021.00180(1311-1319)Online publication date: Sep-2021
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media