[SciPy-User] Timing optimization of python code...

Anthony Palomba apalomba at austin.rr.com
Fri Feb 18 15:03:40 EST 2011


Awesome thanks for the info! I will give it a try.



-ap





On Fri, Feb 18, 2011 at 10:27 AM, Jonathan Rocher <jrocher at enthought.com>wrote:

> HI Anthony,
>
> several things I would recommend for you to use to do that:
> - if you use Ipython, you can use the "magic" function %timeit. It is quick
> and pretty smart as it runs a given command many times and make an average.
> Just do in the ipython prompt for example:
> In [12]: a= None
> In [17]: %timeit a is None
> 10000000 loops, best of 3: 84.9 ns per loop
>
> - if you want a profiler that will analyse a large code and tell you how
> much time is spent in each function, I recommend the line_profiler package:
>
>  http://pypi.python.org/pypi/line_profiler
>
> This provides a script called kernprof.py which can be used to run a
> script under the standard cProfile profiler or the eponymous
> line-based profiler.
>
>  $ kernprof.py code.py
> Wrote profile results to code.py.prof
>
> You can use the stdlib pstats module as a script to view the results:
>
>  http://docs.python.org/library/profile.html
>
> $ python -m pstats
> Welcome to the profile statistics browser.
> % help
>
> Documented commands (type help <topic>):
> ========================================
> EOF  add  callees  callers  quit  read  reverse  sort  stats  strip
>
> Undocumented commands:
> ======================
> help
>
> % read ./code.py.prof
> ./code.prof% strip
> ./code.py.prof% sort time
> ./code.py.prof% stats 10
>
> The last command gives you the 10 functions the code spend the most time
> in.
>
> Hope this helps,
> Jonathan
>
>
> On Fri, Feb 18, 2011 at 10:18 AM, Anthony Palomba <apalomba at austin.rr.com>wrote:
>
>> I am trying to optimize the timing of my python source.
>>
>> Does scipy have a high resolution timer that would allow
>> me to measure latency of functions in order to optimize things?
>>
>>
>>
>> Thanks,
>> Anthony
>>
>> _______________________________________________
>> SciPy-User mailing list
>> SciPy-User at scipy.org
>> http://mail.scipy.org/mailman/listinfo/scipy-user
>>
>>
>
>
> --
> Jonathan Rocher,
> Enthought, Inc.
> jrocher at enthought.com
> 1-512-536-1057
> http://www.enthought.com
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.scipy.org/pipermail/scipy-user/attachments/20110218/56f43094/attachment.html>


More information about the SciPy-User mailing list