PyPy 1.8 Improves Performance, Maintains Business As Usual
The Web Dev Zone is brought to you in partnership with Mendix. Discover how IT departments looking for ways to keep up with demand for business apps has caused a new breed of developers to surface - the Rapid Application Developer.
PyPy 1.8 has arrived, and brings with it a number of bug fixes and performance and memory improvements over the previous release, including support for x86 machines running Linux 32/64 or Windows 32. While Windows 64 is not currently supported, it is planned for a future release.
The main highlight of the release is the introduction of list strategies which makes homogenous lists more efficient both in terms of performance and memory…Now lists that contain only ints or only floats should be as efficient as storing them in a binary-packed array.
-- PyPy Status Blog
Other release highlights include:
- Improved JIT Performance in List Strategies
- Special Strategies for Unicode and Sting Lists
- Faster Python Constructs
- Improved CPython Compatibility
- Ability to Hook Into the JIT Process from a Python Program
- Upgraded Python Compatibility (from 2.7.1 to 2.7.2)
PyPy 1.8 also features significant progress in the Numpy effort:
- multi dimensional arrays
- various sizes of types
- a lot of ufuncs
- a lot of other minor changes
Right now the numpy module is available under both numpy and numpypy names. However, because it's incomplete, you have to import numpypy first before doing any imports from numpy.
-- PyPy Status Blog
There's also a list of ongoing work that's should be available in future releases:
- Non-x86 backends for the JIT: ARMv7 (almost ready) and PPC64 (in progress)
- Specialized type instances - allocate instances as efficient as C structs, including type specialization
- More numpy work
- Since the last release there was a significant breakthrough in PyPy's fundraising. We now have enough funds to work on first stages of numpypy and py3k. We would like to thank again to everyone who donated.