[pypy-commit] pypy default: improve the release announcement
antocuni
noreply at buildbot.pypy.org
Thu Aug 4 11:34:03 CEST 2011
Author: Antonio Cuni <anto.cuni at gmail.com>
Branch:
Changeset: r46269:29f682cd91eb
Date: 2011-08-04 11:19 +0200
http://bitbucket.org/pypy/pypy/changeset/29f682cd91eb/
Log: improve the release announcement
diff --git a/pypy/doc/release-1.6.0.rst b/pypy/doc/release-1.6.0.rst
--- a/pypy/doc/release-1.6.0.rst
+++ b/pypy/doc/release-1.6.0.rst
@@ -3,9 +3,9 @@
===========================
We're pleased to announce the 1.6 release of PyPy. This release brings a lot
-of bugfixes and performance improvements over 1.5 as well as improved platform
-support for Windows 32bit and OS X 64bit. This version fully supports
-Python 2.7.1 (XXX .2?) as well as beta level support for C extensions.
+of bugfixes and performance improvements over 1.5, and improves
+support for Windows 32bit and OS X 64bit. This version fully implements
+Python 2.7.1 and has beta level support for loading CPython C extensions.
You can download it here:
http://pypy.org/download.html
@@ -15,23 +15,66 @@
PyPy is a very compliant Python interpreter, almost a drop-in replacement for
CPython 2.7.1. It's fast (`pypy 1.5 and cpython 2.6.2`_ performance comparison)
-due to its integrated tracing JIT compiler.
+due to its integrated tracing JIT compiler. XXX: compare to 2.7.1
+
+This release supports Intel machines running Linux 32/64 or Mac OS X. Windows
+is beta (it roughly works but a lot of small issues have not been fixed so
+far). Windows 64 is not yet supported.
+
+The main topics of this release are speed and stability: on average, PyPy 1.6
+is between 20% and 30% faster than PyPy 1.5, and overall it's 4.3 times faster
+than CPython when running our set of benchmarks.
+
+The speed improvements have been made possible by optimizing many of the
+layers which compose PyPy. In particular, we improved: the Garbage Collector,
+the JIT warmup time, the optimizations performed by the JIT, the quality of
+the generated machine code and the implementation of our Python interpreter.
+
Highlights
==========
-* Numerous bugfixes
+* Numerous performance improvements, overall giving considerable speedups:
-* Numerous performance improvements, overall giving a nice speedups
+ - better GC behavior when dealing with very large objects and arrays
-* JitViewer, first official release (XXX)
+ - `fast ctypes`_: now calls to ctypes functions are seen and optimized
+ by the JIT, and they are up to 60 times faster than PyPy 1.5 and 10 times
+ faster than CPython
-* multibyte encoding support (XXX which ones)
+ - improved generators(1): simple generators now are inlined into the caller
+ loop, making performance up to 3.5 times faster than PyPy 1.5.
-* faster ctypes, now jitted
+ - improved generators(2): thanks to other optimizations, even generators
+ that are not inlined are between 10% and 20% faster than PyPy 1.5.
-* better handling of memory pressure from raw allocated blocks (arrays)
+ - faster warmup time for the JIT
-* some rudimentary numpy support
+ - JIT support for single floats (e.g., for ``array('f')``)
-* JIT support for single floats
+ - optimized dictionaries: the internal representation of dictionaries is now
+ dynamically selected depending on the type of stored objects, resulting in
+ faster code and smaller memory footprint. For example, dictionaries whose
+ keys are all strings, or all integers.
+
+* JitViewer: this is the first official release which includes the JitViewer,
+ a web-based tool which helps you to see which parts of your Python code have
+ been compiled by the JIT, down until the assembler. XXX: publish a public
+ demo?
+
+- The CPython extension module API has been improved and now supports many
+ more extensions. For information on which one are supported, please refer to
+ our `compatibility wiki`_.
+
+* Multibyte encoding support: this was of of the last areas in which we were
+ still behind CPython, but now we fully support them. (XXX: is that true?)
+
+* Preliminary support for numpy: this release includes a preview of a very
+ fast numpy module integrated with the PyPy JIT. Unfortunately, this does
+ not mean that you can expect to take an existing numpy program and run it on
+ PyPy, because the module is still unfinished and supports only some of the
+ numpy API. However, what works is blaizingly fast :-)
+
+* Bugfixes: since the 1.5 release we fixed 53 bugs in our `bug tracker`_, not
+ counting the numerous bugs that were found and reported through other
+ channels than the bug tracker.
More information about the pypy-commit
mailing list