performance measurement questions

  • Thread starter Eric S. Johansson
  • Start date
E

Eric S. Johansson

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?
 
R

Roy Smith

"Eric S. Johansson said:
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.
 
E

Eric S. Johansson

Roy said:
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:

unfortunately, the programs in question are CGI's and servers. I need
something networks inside the program.
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.

when it comes to program performance measurement, guessing usually gives
you a wrong answer since my request for profiling that measures elapsed
time.

unfortunately, I may need to do as you suggest in place time functions
throughout the code.

---eric
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top