[Numpy-discussion] low level optimization in NumPy and minivect

Frédéric Bastien nouiz at nouiz.org
Mon Jun 17 11:11:43 EDT 2013


I saw that recently Julian Taylor is doing many low level optimization like
using SSE instruction. I think it is great.

Last year, Mark Florisson released the minivect[1] project that he worked
on during is master thesis. minivect is a compiler for element-wise
expression that do some of the same low level optimization that Julian is
doing in NumPy right now.

Mark did minivect in a way that allow it to be reused by other project. It
is used now by Cython and Numba I think. I had plan to reuse it in Theano,
but I didn't got the time to integrate it up to now.

What about reusing it in NumPy? I think that some of Julian optimization
aren't in minivect (I didn't check to confirm). But from I heard, minivect
don't implement reduction and there is a pull request to optimize this in

The advantage to concentrate some functionality in one common package is
that more project benefit from optimization done to it. (after the work to
use it first!)

How this could be done in NumPy? NumPy have its own code generator for many
dtype. We could call minivect code generator to replace some of it.

What do you think of this idea?

Sadly, I won't be able to spent time on the code for this, but I wanted to
raise the idea while people are working on that, in case it is helpful.


[1] https://github.com/markflorisson88/minivect
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20130617/058b18ed/attachment.html>

More information about the NumPy-Discussion mailing list