jingham added a comment.

Timers seemed like they would be really useful for collection of data about 
operations in lldb, but for most things I think they end up being hard to use 
because actual wall-clock time is so variable from run to run, and especially 
for disk and inter-process heavy operations, which lldb tends to be.  I'm not 
sure we should give up on timers, sometimes you want to know "how many times 
did I do X" and other times "how long did X take" and the Timers are more 
useful for this than just a sample or wall-clock times because you can find out 
how long it took "in the Dwarf parser", etc.

But in many cases our performance is more driven by unnecessary lookups, and 
that sort of error.  For that sort of error it will be much more useful to say 
"given program A and expression B, how many DWARF DIE lookups did I do" than 
"how long did I spent wall-clock in the DWARF parser..."  When the former goes 
from 20 to 2000, that will be a much clearer symbol that we probably introduced 
a performance regression.


lldb-commits mailing list

Reply via email to