Message165935
There seems to be a problem with the patch: when you store the getvalue() result somewhere (instead of discarding it), things get much slower:
$ ./python -m timeit -s "import io; n=2000; d=[b'a'*n,b'bb'*n,b'ccc'*n]*1000" "s=io.BytesIO(); w=s.write" "for x in d: w(x)" "s.getvalue()"
1000 loops, best of 3: 913 usec per loop
$ ./python -m timeit -s "import io; n=2000; d=[b'a'*n,b'bb'*n,b'ccc'*n]*1000" "s=io.BytesIO(); w=s.write" "for x in d: w(x)" "global y; y = s.getvalue()"
100 loops, best of 3: 4.67 msec per loop
This does not happen without the patch. |
|
Date |
User |
Action |
Args |
2012-07-20 15:03:29 | pitrou | set | recipients:
+ pitrou, ncoghlan, Arfrever, eli.bendersky, meador.inge, tshepang, jcon, serhiy.storchaka |
2012-07-20 15:03:28 | pitrou | set | messageid: <1342796608.8.0.788759810799.issue15381@psf.upfronthosting.co.za> |
2012-07-20 15:03:28 | pitrou | link | issue15381 messages |
2012-07-20 15:03:27 | pitrou | create | |
|