========================== Announcing Numexpr 1.3.1 ==========================
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.
This is a maintenance release. On it, support for the `unit32` type has been added (it is internally upcasted to `int64`), as well as a new `abs()` function (thanks to Pauli Virtanen for the patch).
Also, a little tweaking in the treatment of unaligned arrays on Intel architectures allowed for up to 2x speedups in computations involving unaligned arrays. For example, for multiplying 2 arrays (see the included ``unaligned-simple.py`` benchmark), figures before the tweaking were:
NumPy aligned: 0.63 s NumPy unaligned: 1.66 s Numexpr aligned: 0.65 s Numexpr unaligned: 1.09 s
while now they are:
NumPy aligned: 0.63 s NumPy unaligned: 1.65 s Numexpr aligned: 0.65 s Numexpr unaligned: 0.57 s <-- almost 2x faster than above
You can also see how the unaligned case can be even faster than the aligned one. The explanation is that the 'aligned' array was actually a strided one (actually a column of an structured array), and the total working data size was a bit larger for this case.
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:
And you can get the packages from PyPI as well:
How it works? =============
for a detailed description by the original author (David M. Cooke).
Share your experience =====================
Let us know of any bugs, suggestions, gripes, kudos, etc. you may have.