Profiling looseness...

Have RunSnakeRun imported into LaunchPad now.  I've also implemented a version that uses an enhanced SquareMap so that you can see the hierarchic relationships in the data.  Because of the way cProfile works, you don't see "deep" relationships, that is, while I know that a calls c for 50% of the time, and that c calls d for 40% of the time, I can't make any inference from that that a spends 20% of its time in d, as any other callers of c (say b) will have their time added to the cummulative time that c spends in d.

To get around that you'd need to have code in the profile-capture that was constantly figuring out the whole stack and using the stack as a whole (minus recursions) to record relative usage... that would likely be a bit expensive (space-wise) and likely wouldn't provide all that much benefit.

Anyway, next up for this stuff is getting the controls wired up together so that when you click on a list-item it highlights the squaremap (and vice-versa).  Alternatively could have selecting an item set that item to be the root of the squaremap tree (zooming).  Might be neat to have a simple code preview pane too. 

I'm planning to deprecate the hotshot loader eventually, cProfile has pretty much obsoleted hotshot and the hotshot files tend to be really big without providing much benefit beyond cProfile.


Comments are closed.


Pingbacks are closed.