連結已複製
Good question, L.Y.!
If you are talking about sampling data, and not callgraph data, then, no, the clockticks of subfunctions are not included in the calling function. Sampling has no concept of caller/callee functions, that is, it has no information about what function called which other function(s).
Sampling simply associates instruction addresses where events occurred, and aggregates them at the function, module, and process level.
Callgraph, on the other hand, does understand calling relationships and displays both accumulated and non-accumulated numbers. A function's Self-time is the amount of time spent just inside the function's code. While the function's Total Time is the function's Self-time plus all called function's Self-time, including functions called by those functions, down to the last level.
For example, if function A() called A1(), A2(), and A3(), then A()'s Total Time includes the Total Times (of Self-time, in this case) of A1(), A2(), A3() and A()'s Self-time. Then, if B() called A(), B()'s Total Timewould include B()'s Self-time plus A()'s Total Time.
Hope that helps.
