On Fri, Dec 30, 2011 at 5:45 AM, <jason-sage@creativetrax.com> wrote:
On 12/29/11 10:37 PM, Jaidev Deshpande wrote:
> Hi!
>
>> Along with test coverage, have any of you considered any systematic
>> monitoring of NumPy performance?
>
> I'm mildly obsessed with performance and benchmarking of NumPy. I used
> to use a lot of MATLAB until a year back and I tend to compare Python
> performance with it all the time. I generally don't feel happy until
> I'm convinced that I've extracted the last bit of speed out of my
> Python code.
>
> I think the generalization of this idea is more or less equivalent to
> performance benchmarking. Of course, I know there's a lot more than
> 'MATLAB vs Python' to it. I'd be more than happy to be involved. GSoC
> or otherwise.
>
> Where do I start?

We've recently had a discussion about more intelligent timeit commands
and timing objects in Python/Sage.  People here might find the
discussion interesting, and it might also be interesting to collaborate
on code.  The basic idea was a much smarter timeit command that uses
more intelligent statistics and presents a much more comprehensive look
at the timing information.

Here is the discussion:
https://groups.google.com/forum/#!topic/sage-devel/8lq3twm9Olc

Here is our ticket tracking the issue:
http://trac.sagemath.org/sage_trac/ticket/12168

Here are some examples of the analysis: http://sagenb.org/home/pub/3857/

Nice. It would be cool to have this available as a separate ipython magic command. For performance monitoring it's probably unnecessary, regular %timeit should be OK for that.

Performance monitoring does require quite a bit of infrastructure (like Wes' vbench project) though, which could be a good (GSOC) project. There's other VCS's to support, maybe a buildbot plugin, many options there.

Ralf