|PyPy 5.0 Released|
|Written by Kay Ewbank|
|Thursday, 17 March 2016|
The development team for PyPy has released version 5.0 of the Python interpreter, only three months since releasing PyPy 4.0.1.
PyPy is a very compliant Python interpreter with an integrated JIT compiler, which results in a fast performance.The new version is described as faster and leaner, with a lower warm-up time and improved memory usage of JIT-related metadata. The team says that the exact effects depend on the program you are running, and can range from insignificant to warmup being up to 30% faster and memory dropping by about 30%.
Another improvement to the new version is in the C-API layer. The interaction between c-level objects and PyPy interpreter level objects has been simplified. The developers say that as a result, the prerelease version of lxml with its cython compiled component passes all tests on PyPy, and the new cpyext is also much faster. The plan is that the developers will build on this work by expanding PyPy's C-API compatibility.
Extra platform support has been added for vmprof, so that in addition to Linux, it now works on OS X and Windows on both PyPy and CPython. This means there's no longer a need to use what the developers describe as buggy libunwind on Linux platforms.
The final infrastructure improvement is that the new version ships with cffi 1.5.2, so you can now embed PyPy or CPython in a C program. This deprecates the old method of embedding PyPy.
The new version also adds support for more of the C-API type slots, like tp_getattro, and fix C-API. It also uses a more stable approach for allocating PyObjects in cpyext. The developers say that once the PyObject corresponding to a PyPy object is created,it stays around at the same location until the death of the PyPy object. This has done away with the need for “borrowing” inside cpyext, and has significantly simplified the whole approach.
or email your comment to: firstname.lastname@example.org
|Last Updated ( Thursday, 17 March 2016 )|