[pypy-svn] r68571 - pypy/trunk/pypy/doc
cfbolz at codespeak.net
cfbolz at codespeak.net
Sat Oct 17 10:33:20 CEST 2009
Date: Sat Oct 17 10:33:20 2009
New Revision: 68571
--- pypy/trunk/pypy/doc/interpreter-optimizations.txt (original)
+++ pypy/trunk/pypy/doc/interpreter-optimizations.txt Sat Oct 17 10:33:20 2009
@@ -103,7 +103,7 @@
integer object is created it is checked whether the integer is small enough to
be retrieved from the cache.
-You can enable this feature with the :config:`objspace.std.withsmallint` option.
+This option is enabled by default.
Integers as Tagged Pointers
@@ -115,6 +115,7 @@
them from normal pointers. This completely avoids the boxing step, saving
time and memory.
+You can enable this feature with the :config:`objspace.std.withsmallint` option.
@@ -132,11 +133,9 @@
for string-keyed dictionaries. In addition there are more specialized dictionary
implementations for various purposes (see below).
-You can enable this feature with the :config:`objspace.std.withmultidict`
+This is now the default implementation of dictionaries in the Python interpreter.
-.. XXX chunked dicts, small dicts
@@ -202,36 +201,6 @@
You can enable this feature with the :config:`objspace.std.withrangelist`
-As with dictionaries it became clear that it is generally useful to allow lists
-to change their internal representation over their lifetime. Therefore
-multi-lists were implemented, mostly equivalently to multi-dicts. The special
-representations you get by default are for empty lists, for lists containing
-only strings and ranges again (the reason why range lists and multilists both
-implement the same optimization is that range lists came earlier and that
-multi-lists are not tested that much so far).
-You can enable this feature with the :config:`objspace.std.withmultilist`
-Fast List Slicing
-A rather experimental special list representation used with multilists is the
-slice list (the original idea is from `Neal Norwitz on pypy-dev`_). The
-observation is that slices are often created for iterating over them, so it
-seems wasteful to create a full copy of that portion of the list. Instead the
-list slice is only created lazily, that is when either the original list or
-the sliced list is mutated.
-You can enable this feature with the :config:`objspace.std.withfastslice`
-.. _`Neal Norwitz on pypy-dev`: http://codespeak.net/pipermail/pypy-dev/2005q4/002538.html
User Class Optimizations
More information about the Pypy-commit