======================== Announcing Numexpr 2.0 ========================
Numexpr is a fast numerical expression evaluator for NumPy. With it, expressions that operate on arrays (like "3*a+4*b") are accelerated and use less memory than doing the same calculation in Python.
It wears multi-threaded capabilities, as well as support for Intel's VML library, which allows for squeezing the last drop of performance out of your multi-core processors.
What's new ==========
This version comes with support for the new iterator in NumPy (introduced in NumPy 1.6), allowing for improved performance in practically all the scenarios (the exception being very small arrays), and most specially for operations implying broadcasting, fortran-ordered or non-native byte orderings.
The carefully crafted mix of the new NumPy iterator and direct access to data buffers turned out to be so powerful and flexible, that the internal virtual machine has been completely revamped around this combination.
The drawback is that you will need NumPy >= 1.6 to run numexpr 2.0. However, NumPy 1.6 has been released more than 6 months ago now, so we think this is a good time for taking advantage of it. Many thanks to Mark Wiebe for such an important contribution!
For some benchmarks on the new virtual machine, see:
Also, Gaëtan de Menten contributed important bug fixes, code cleanup as well as speed enhancements. Francesc Alted contributed some fixes, and added compatibility code with existing applications (PyTables) too.
In case you want to know more in detail what has changed in this version, see:
or have a look at RELEASE_NOTES.txt in the tarball.
Where I can find Numexpr? =========================
The project is hosted at Google code in:
You can get the packages from PyPI as well:
Share your experience =====================
Let us know of any bugs, suggestions, gripes, kudos, etc. you may have.