performance measurement questions

Roy Smith roy at panix.com
Tue Jul 6 08:40:42 EDT 2004


In article <mailman.23.1089109667.5135.python-list at python.org>,
 "Eric S. Johansson" <esj at harvee.org> wrote:

> I've been playing with the profiler and have been rather successful in 
> making my code run faster.  So for my best success has been cutting a 
> three second CPU time run down to about 0.45 seconds.
> 
> Unfortunately, the same application seems to take about 8 to 12 seconds 
> real-time.  I know that some of that time is lost to file IO and 
> external sub processes but I don't know how much.
> 
> Is there any way to change the profiler to measure elapsed time and not 
> CPU time?

I don't know about the profiler, but there's a couple of things you 
could do to try and figure out what's going one (all of these assume a 
unix-like environment):

First, use the "time" command to run your program, like this:

> Roy-Smiths-Computer:unit$ time ./TargetUnit.py 
> ........
> ----------------------------------------------------------------------
> Ran 8 tests in 1.064s
> 
> OK
> 
> real    0m1.340s
> user    0m0.960s
> sys     0m0.100s

That should give you a rough idea what's going on.

If you have some ideas where the time might be spent internally, you can 
use the os.times() function to gather time snapshots around areas you 
suspect of being slow.



More information about the Python-list mailing list