Overloading/Inheritance issue
Walter Bright
newshound1 at digitalmars.com
Tue Aug 7 17:37:21 PDT 2007
Jascha Wetzel wrote:
> Walter Bright wrote:
>> Post a snippet of the output and point out what is unclear, and I'll
>> try to help.
>
> the sections that come first, before the list of functions sorted by
> "func time":
>
> ------------------
> 1 A
> 1095 B
> 1856 C
> D 2952 122732995 3009972
>
> the sections appear to list the functions that are directly called by
> the top most in the section. but i can't figure out what the numbers
> mean and why there are some entries with a single one on the left and
> some with 3 numbers on the right of the function name.
I renamed the functions for simplicity.
D is called 2952 times. 1 of those calls comes from A. 1095 come from B.
1856 come from C. Note that 1+1095+1856 = 2952. (The A, B, C counts
are called the "fan in".) The "fan out" is a list of counts of what D
calls, and follows the line for D.
The total number of timer ticks spent in D is 3009972, excluding
whatever D calls. The total number of timer ticks in D, including
whatever D calls, is 122732995.
From this information you can not only determine where the time is
being consumed, but *why*, as you know where the calls are coming from.
You can do this to determine the runtime relationships between
functions, which can be used to set the link order (and this is output
by the profiler in the form of a .def file).
More information about the Digitalmars-d
mailing list