[SciPy-user] Numpy/SciPy and performance optimizations

Neal Becker ndbecker2@gmail....
Wed Jan 7 14:05:58 CST 2009

Georg Holzmann wrote:

> Hallo!
>> I have had best luck with boost::ublas.  Limited to 2d though.
>> blitz is very nice, but 2 problems:
>> suffers from lots of old cruft from supporting ancient c++ compilers
>> Poorly maintained - future uncertain IMO.
> For me the biggest problem with blitz++ is, that it is very unintuitive
> and slow to write blas-like statements.
>> MTL is moving extremely slowly.
>> One very active project is eigen.  I haven't used it myself.
> Thanks for the hint to eigen (http://eigen.tuxfamily.org/), I did not
> know this library - it looks very promising (although there are no
> benchmarks for sparse operations, I should try that!).
> Do you also know if this library is well maintained ?
> I am now using a very nice c++ lib (flens:
> http://flens.sourceforge.net/), but with a very unforeseeable future
> (and many dependencies, hard to build) ...
> However, what I mainly wanted to ask was, how you use boost::ublas or
> eigen with numpy/scipy - how both systems are combined ?
> For me ATM the optimal way would be to use e.g. eigen in weave like now
> blitz++ is used in weave ...

I haven't really found totally satisfactory solutions here.  I used boost::ublas with boost::python 99% of the time, and only sometimes numpy.  There are a number of efforts to try to do something better.  One that interests me is pyublas.

Another interesting thing is cython, which is supposed to be getting support for numpy.  Personally I find cython a bit too strange and a bit too C-centric, but it is widely used (all of sage!).

More information about the SciPy-user mailing list