[SciPy-user] Numpy/SciPy and performance optimizations
Wed Jan 7 14:05:58 CST 2009
Georg Holzmann wrote:
>> 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