Antoine Pitrou added the comment:

> 1. Pack picked items in blocks of some predefined (or specified at the
> start with the BLOCKSIZE opcode) size. Only some large data (long
> strings, large integers) can cross the boundary between blocks. In all
> other cases the block should be padded with the NOP opcode.

Padding makes it both less efficient and more annoying to handle, IMO.
My framing proof-of-concept ends up quite simple in terms of code
complexity. For example, the C version only adds 125 lines of code in 3
additional functions.

> 2. A similar to your proposition, but frames should be declared with a
> special PREFETCH opcode (with 2- or 4-bytes argument). Large data
> pickled outside frames (this prevents doublecopying).

No doublecopying is necessary (not in the C version, that is). That
said, this is an interesting idea.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue17810>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to