This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author yselivanov
Recipients brett.cannon, larry, lemburg, mark.dickinson, pitrou, rhettinger, scoder, serhiy.storchaka, vstinner, yselivanov
Date 2016-02-11.21:29:36
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
Best of 5s:

-m timeit -s "r = range(10**4)" -- "for i in r: pass"
orig: 239 usec
my patch: 148
int_free_list_2: 151
int_free_list_multi: 156

-m timeit -s "r = range(10**5)" -- "for i in r: pass"
orig: 2.4 msec
my patch: 1.47
int_free_list_2: 1.53
int_free_list_multi: 1.57

-m timeit -s "a = list(range(10**4))" -- "for i, x in enumerate(a): pass"
orig: 416 usec
my: 314
int_free_list_2: 314
int_free_list_multi: 317

-m timeit -s "a = list(range(10**5))" -- "for i, x in enumerate(a): pass"
orig: 4.1 msec
my: 3.13
int_free_list_2: 3.14
int_free_list_multi: 3.13

-m timeit -s "from base64 import b85encode; a = bytes(range(256))*100" -- "b85encode(a)"
orig: 3.49 msec
my: 3.28
int_free_list_2: 3.30
int_free_list_multi: 3.31

-m timeit -s "loops=tuple(range(1000))" "for x in loops: x+x"
orig: 44.4 usec
my: 35.2
int_free_list_2: 35.4
int_free_list_multi: 35.5

spectral_norm (against default):
my: 1.12x faster
int_free_list_2: 1.12x faster
int_free_list_multi: 1.12x faster


All in all, all patches show the same performance improvement.  I guess we can go with int_free_list_multi.
Date User Action Args
2016-02-11 21:29:37yselivanovsetrecipients: + yselivanov, lemburg, brett.cannon, rhettinger, mark.dickinson, pitrou, scoder, vstinner, larry, serhiy.storchaka
2016-02-11 21:29:37yselivanovsetmessageid: <>
2016-02-11 21:29:37yselivanovlinkissue24165 messages
2016-02-11 21:29:36yselivanovcreate