[Python-Dev] Psyco testing results
Itamar Shtull-Trauring
twisted@itamarst.org
Sat, 02 Mar 2002 00:51:36 -0500
Skip Montanaro wrote:
> Itamar> Basically, the key point is that you need to psyco.bind on the
> Itamar> right functions.
>
> Sounds like a job for hotshot:
>
> http://starship.python.net/crew/fdrake/talks/IPC10-HotShot-2002-Feb-06.ppt
> http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/python/python/dist/src/Lib/hotshot/
Not exactly. I tried binding functions hotshot said were using a lot of
CPU time, and it didn't always help. But certainly hotshot helped
finding which ones to try.
On the subject of hotshot - I made a command line hotshot profiler so
you can use it easily, as with the standard profiler (download it from
http://itamarst.org/software/). It's great! Unlike the standard profiler
the results are much nearer to reality since the profiler isn't using
half your CPU time.
Doing some testing, I noticed some results that were obviously wrong. A
function that is listed as using 2 seconds of time, when a consequent
run only said 0.003 or something. Since this was a function that
basically did:
if self.tasks:
return 0.0
else:
return None
and it was run a similar number of times (and no threads), I suspect the
2 seconds result was totally bogus. Unfortanutely I didn't remember to
keep the hotshot logs. This happened at least twice that I noticed.