[pypy-svn] r64389 - pypy/trunk/pypy/doc
cfbolz at codespeak.net
cfbolz at codespeak.net
Sun Apr 19 17:41:27 CEST 2009
Date: Sun Apr 19 17:41:27 2009
New Revision: 64389
say something about performance
--- pypy/trunk/pypy/doc/release-1.1.0.txt (original)
+++ pypy/trunk/pypy/doc/release-1.1.0.txt Sun Apr 19 17:41:27 2009
@@ -4,7 +4,8 @@
Welcome to the PyPy 1.1 release - the first release after the end of EU
funding. This release focuses on making PyPy's Python interpreter more
-compatible with CPython (currently CPython 2.5).
+compatible with CPython (currently CPython 2.5) and on making the
+interpreter more stable and bug-free.
PyPy's Getting Started lives at:
@@ -20,9 +21,13 @@
- - performance improvements: between 0.8-2x (and in some corner case 3-4x)
- the time spent by CPython XXX we should measure 1.0 and compare
- - new garbage collectors: moving GCs, e.g. generational, hybrid, etc., threads+gc work
+ - Through a large number of tweaks, performance has been improved by
+ 10%-50% since the 1.0 release. The Python interpreter is now between
+ 0.8-2x (and in some corner case 3-4x) of the speed of CPython. A large
+ part of these speed-ups come from our new generational garbage
- Our Python interpreter now supports distutils as well as
easy_install for pure-Python modules.
@@ -50,10 +55,6 @@
- - memory wise optimizations (check it): mark-compact GC, shared instance
- dictionaries also for instances of old-style classes; user class instances
- often 50% of CPython size!
- The ``clr`` module was greatly improved. This module is used to
interface with .NET libraries when translating the Python
interpreter to the CLI.
@@ -82,6 +83,15 @@
+ - Some effort was spent to make the Python interpreter more
+ memory-efficient. This includes the implementation of a mark-compact
+ GC which uses less memory than other GCs during collection.
+ Additionally there were various optimizations that make Python
+ objects smaller, e.g. class instances are often only 50% of the size
+ of CPython.
- The support for the trace hook in the Python interpreter was
improved to be able to trace the execution of builtin functions and
methods. With this, we implemented the ``_lsprof`` module, which is
@@ -98,13 +108,35 @@
+What is PyPy?
+Technically, PyPy is both a Python interpreter implementation and an
+advanced compiler, or more precisely a framework for implementing dynamic
+languages and generating virtual machines for them.
+The framework allows for alternative frontends and for alternative
+backends, currently C, Java and .NET. For our main target "C", we can
+can "mix in" different garbage collectors and threading models,
+including micro-threads aka "Stackless". The inherent complexity that
+arises from this ambitious approach is mostly kept away from the Python
+interpreter implementation, our main frontend.
+Socially, PyPy is a collaborative effort of many individuals working
+together in a distributed and sprint-driven way since 2003. PyPy would
+not have gotten as far as it has without the coding, feedback and
+general support from numerous people.
the PyPy release team, [in alphabetical order]
- Anders Hammerquist, Antonio Cuni, Armin Rigo, Carl Friedrich Bolz,
- Christian Tismer, Holger Krekel, Maciek Fijalkowski,
- Samuele Pedroni
+ Amaury Forgeot d'Arc, Anders Hammerquist, Antonio Cuni, Armin Rigo,
+ Carl Friedrich Bolz, Christian Tismer, Holger Krekel,
+ Maciek Fijalkowski, Samuele Pedroni
and many others:
More information about the Pypy-commit