[issue9410] Add Unladden Swallow's optimizations to Python 3's pickle.

Alexandre Vassalotti report at bugs.python.org
Thu Jul 29 08:26:08 CEST 2010

New submission from Alexandre Vassalotti <alexandre at peadrop.com>:

This is a big patch. Please review at http://codereview.appspot.com/1694050/show

This patch adds the most interesting optimizations from Unladen Swallow to Python 3's pickle.

The core of the patch already been reviewed by Antoine and me (http://codereview.appspot.com/33070/show). One of the last issue remaining the unbounded size of the internal buffer. This shouldn't be a big issue for most uses of pickle, since the size of a  pickle is often several times smaller than the object hierarchy that created it. I still hope to fix this in a following patch.

The patch also include additional cleanups to the Pdata structure. The changes felt natural to make along with the other changes from Unladen Swallow. IIRC, these changes yield an additional 1-3% speedup.

assignee: alexandre.vassalotti
components: Extension Modules
files: pickle_optimizations.diff
keywords: patch
messages: 111895
nosy: alexandre.vassalotti, belopolsky, collinwinter, haypo, pitrou
priority: normal
severity: normal
stage: patch review
status: open
title: Add Unladden Swallow's optimizations to Python 3's pickle.
type: performance
versions: Python 3.2
Added file: http://bugs.python.org/file18246/pickle_optimizations.diff

Python tracker <report at bugs.python.org>

More information about the Python-bugs-list mailing list