levisonm@qucis.queensu.CA (Mark Levison) (11/30/90)
I have just finished reading an article called "Inaccuracies in Program Profilers" by C. Ponder and R. J. Fateman from Software Practice and Experience May 1988. In this paper several problems with the traditional Unix profiler gprof are discussed. One of the most important ones is that profiler calculates the amount of time spent in a routine for each parent by taking the total time spent in the routine and dividing by the total number of calls to that routine. The problem is that this is an overall average and if the routine has two different parents with rather different execution times for each then this average time will be very misleading. This leads to my question is there any profiling system out there that will do the same type of job as gprof but witout this and the other problems the authors mention? Failing that is some clever way of getting the compiler (cc on a Sun 3/80 at SunOs 4.0.3 or gcc on the same system) to insert calls to special routine at the start and end of each call? I would prefer if such a system were available free because I do not have any budget to buy any solutions. Thanks in advance, Mark Levison Research Assistant levisonm@qucis.queensu.ca