Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Optimally profiling and tracing programs
Ball T., Larus J. ACM Transactions on Programming Languages and Systems16 (4):1319-1360,1994.Type:Article
Date Reviewed: Jul 1 1995

Ball and Larus describe algorithms they developed for profiling and tracing programs. The components to be analyzed can be either the vertices of the program graph or its edges. The profile counts for the vertices can be deduced from those for the edges but not conversely. For an edge-based profile, not all edges need counters; in particular, the full set of edge counts can be deduced even if all edges in a spanning tree of the graph are left without counters.

A minimum-cost profile for the vertices, computed using the edges, is always at least as cheap as any other profile, but finding such a profile is a hard problem in general. For well-structured programs, a minimum-cost profile for the edges is just as good and yields both vertex and edge profiles, but for other programs a vertex profile may be cheaper.

The authors present algorithms for computing both edge profiles and vertex profiles, computed using edge counts. (For a vertex profile of an ill-structured program, not all edge counts may be needed.) They compare experimentally the cost of profiling using these algorithms with the cost of profiling edges exhaustively and show that the algorithms dramatically reduce the overhead introduced by profiling.

An optimal solution to the edge-profiling problem is also an optimal solution to the tracing problem for single procedures, but multiple procedures need additional treatment. The authors present a way of handling multiple procedures using “blocking witnesses.”

Reviewer:  P. Abrahams Review #: CR118728 (9507-0497)
Bookmark and Share
 
Tracing (D.2.5 ... )
 
 
Diagnostics (D.2.5 ... )
 
 
Measurement Techniques (C.4 ... )
 
 
Programmer Workbench (D.2.2 ... )
 
 
Design Tools and Techniques (D.2.2 )
 
 
Testing And Debugging (D.2.5 )
 
  more  
Would you recommend this review?
yes
no
Other reviews under "Tracing": Date
Experience with a portable debugging tool
Steffen J. Software--Practice & Experience 14(4): 323-334, 1984. Type: Article
Feb 1 1985
A probe effect in concurrent programs
Gait J. Software--Practice & Experience 16(3): 225-233, 1986. Type: Article
Sep 1 1986
Effectiveness of trace sampling for performance debugging tools
Martonosi M., Gupta A., Anderson T. ACM SIGMETRICS Performance Evaluation Review 21(1): 248-259, 1993. Type: Article
Jul 1 1994
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy