[issue9971] Optimize BufferedReader.readinto

John O'Connor report at bugs.python.org
Wed May 11 23:00:50 CEST 2011


John O'Connor <tehjcon at gmail.com> added the comment:

I've attached the latest changes based on feedback (issue9971-v5.patch)


for i in 1 4 128 256 1024 2048 4069 8192 16384; do echo -n "buffer_size=$i "; ./python -m timeit -s "f=open('LICENSE','rb');b=bytearray($i)" "f.seek(0)" "while f.readinto(b): pass"; done
buffer_size=1 100 loops, best of 3: 3.96 msec per loop
buffer_size=4 1000 loops, best of 3: 1.12 msec per loop
buffer_size=128 10000 loops, best of 3: 40.1 usec per loop
buffer_size=256 10000 loops, best of 3: 24.1 usec per loop
buffer_size=1024 100000 loops, best of 3: 12.2 usec per loop
buffer_size=2048 100000 loops, best of 3: 10.4 usec per loop
buffer_size=4069 100000 loops, best of 3: 9.52 usec per loop
buffer_size=8192 100000 loops, best of 3: 6.04 usec per loop
buffer_size=16384 100000 loops, best of 3: 4.8 usec per loop

----------
Added file: http://bugs.python.org/file21975/issue9971-v5.patch

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue9971>
_______________________________________


More information about the Python-bugs-list mailing list