Profiling python 2.3

2005-01-27 Thread Kenneth Johansson
I wonder what would be a good way to profile a python program where the 
main thread starts two worker threads that do all the work.

I get no infomation at all from the threads.
I tried to use profile.run as the first thing in the new thread and the 
thread starts and works fine but when it exits I get this error

  File "/usr/lib/python2.3/profile.py", line 71, in run
prof = prof.run(statement)
  File "/usr/lib/python2.3/profile.py", line 403, in run
return self.runctx(cmd, dict, dict)
  File "/usr/lib/python2.3/profile.py", line 409, in runctx
exec cmd in globals, locals
TypeError: exec: arg 1 must be a string, file, or code object

The main problem I have is that when I add a small function to a program 
 the resulting code takes longer than it should. The program takes 
about 80% normally and end up taking more than 100%. I did a small test 
of the new funtions and when I run that alone it only takes 20%-25% so 
the result sould not take more than 50% and now I need to know where the 
time is spent.
--
http://mail.python.org/mailman/listinfo/python-list


Re: Profiling python 2.3

2005-01-28 Thread Kenneth Johansson
On Fri, 28 Jan 2005 10:02:33 +, Stephen Kellett wrote:

> In message <[EMAIL PROTECTED]>, Kenneth 
> Johansson <[EMAIL PROTECTED]> writes
>>I wonder what would be a good way to profile a python program where the 
>>main thread starts two worker threads that do all the work.
>>
>>I get no infomation at all from the threads.
> 
> Python Performance Validator (beta)
> 
> http://www.softwareverify.com/pythonPerformanceValidator/index.html
> 
> Stephen

I develop on linux. 

Nice to see I do not have to recompile and relink to use the tool that's a
real problem with other python stuff ;)


-- 
http://mail.python.org/mailman/listinfo/python-list