Message268866
Victor's patch harvested most fruits, but there is a place for further optimization.
Benchmark results for new patch:
Py3.2 Py3.3 Py3.6 Py3.6+patch
451 (-47%) 77 (+209%) 140 (+70%) 238 decode unicode-escape 'A'*10000
269 (-14%) 161 (+44%) 187 (+24%) 232 decode unicode-escape '\x80'*10000
453 (-48%) 85 (+178%) 181 (+30%) 236 decode unicode-escape '\x80'+'A'*9999
295 (-4%) 185 (+54%) 229 (+24%) 284 decode unicode-escape '\u0100'*10000
452 (-47%) 75 (+221%) 213 (+13%) 241 decode unicode-escape '\u0100'+'A'*9999
275 (-11%) 149 (+64%) 187 (+30%) 244 decode unicode-escape '\u0100'+'\x80'*9999
297 (-4%) 185 (+54%) 230 (+23%) 284 decode unicode-escape '\u8000'*10000
452 (-47%) 75 (+221%) 213 (+13%) 241 decode unicode-escape '\u8000'+'A'*9999
275 (-11%) 149 (+64%) 187 (+30%) 244 decode unicode-escape '\u8000'+'\x80'*9999
295 (-3%) 185 (+54%) 230 (+24%) 285 decode unicode-escape '\u8000'+'\u0100'*9999
318 (-29%) 203 (+11%) 220 (+2%) 225 decode unicode-escape '\U00010000'*10000
452 (-51%) 72 (+207%) 163 (+36%) 221 decode unicode-escape '\U00010000'+'A'*9999
275 (-31%) 128 (+49%) 160 (+19%) 191 decode unicode-escape '\U00010000'+'\x80'*9999
295 (-36%) 164 (+16%) 201 (-5%) 190 decode unicode-escape '\U00010000'+'\u0100'*9999
297 (-36%) 166 (+14%) 199 (-5%) 190 decode unicode-escape '\U00010000'+'\u8000'*9999
559 (-62%) 88 (+143%) 194 (+10%) 214 decode raw-unicode-escape 'A'*10000
555 (-62%) 88 (+142%) 195 (+9%) 213 decode raw-unicode-escape '\x80'*10000
559 (-62%) 88 (+142%) 195 (+9%) 213 decode raw-unicode-escape '\x80'+'A'*9999
265 (+29%) 133 (+156%) 212 (+61%) 341 decode raw-unicode-escape '\u0100'*10000
563 (-54%) 77 (+235%) 195 (+32%) 258 decode raw-unicode-escape '\u0100'+'A'*9999
559 (-54%) 77 (+234%) 194 (+32%) 257 decode raw-unicode-escape '\u0100'+'\x80'*9999
269 (+27%) 138 (+147%) 208 (+64%) 341 decode raw-unicode-escape '\u8000'*10000
562 (-54%) 77 (+235%) 193 (+34%) 258 decode raw-unicode-escape '\u8000'+'A'*9999
559 (-54%) 77 (+234%) 194 (+32%) 257 decode raw-unicode-escape '\u8000'+'\x80'*9999
265 (+29%) 138 (+147%) 208 (+64%) 341 decode raw-unicode-escape '\u8000'+'\u0100'*9999
281 (-13%) 152 (+61%) 228 (+7%) 244 decode raw-unicode-escape '\U00010000'*10000
562 (-65%) 74 (+164%) 200 (-2%) 195 decode raw-unicode-escape '\U00010000'+'A'*9999
557 (-65%) 74 (+162%) 200 (-3%) 194 decode raw-unicode-escape '\U00010000'+'\x80'*9999
265 (-2%) 122 (+114%) 184 (+42%) 261 decode raw-unicode-escape '\U00010000'+'\u0100'*9999
269 (-3%) 122 (+113%) 185 (+41%) 260 decode raw-unicode-escape '\U00010000'+'\u8000'*9999
195 (+136%) 109 (+323%) 258 (+79%) 461 encode unicode-escape 'A'*10000
673 (-23%) 522 (-1%) 254 (+103%) 516 encode unicode-escape '\x80'*10000
197 (+134%) 132 (+248%) 247 (+86%) 460 encode unicode-escape '\x80'+'A'*9999
869 (-22%) 627 (+9%) 333 (+105%) 682 encode unicode-escape '\u0100'*10000
197 (-19%) 124 (+28%) 158 (+1%) 159 encode unicode-escape '\u0100'+'A'*9999
669 (-35%) 493 (-12%) 236 (+83%) 432 encode unicode-escape '\u0100'+'\x80'*9999
866 (-20%) 628 (+10%) 333 (+108%) 692 encode unicode-escape '\u8000'*10000
197 (-19%) 125 (+27%) 158 (+1%) 159 encode unicode-escape '\u8000'+'A'*9999
669 (-35%) 492 (-12%) 236 (+83%) 433 encode unicode-escape '\u8000'+'\x80'*9999
869 (-20%) 627 (+11%) 324 (+114%) 694 encode unicode-escape '\u8000'+'\u0100'*9999
870 (-1%) 897 (-4%) 501 (+72%) 861 encode unicode-escape '\U00010000'*10000
197 (+20%) 139 (+70%) 234 (+1%) 236 encode unicode-escape '\U00010000'+'A'*9999
668 (-27%) 533 (-9%) 249 (+96%) 487 encode unicode-escape '\U00010000'+'\x80'*9999
869 (-12%) 646 (+18%) 344 (+122%) 764 encode unicode-escape '\U00010000'+'\u0100'*9999
864 (-12%) 643 (+19%) 344 (+122%) 762 encode unicode-escape '\U00010000'+'\u8000'*9999
391 (+1310%) 333 (+1556%) 575 (+859%) 5514 encode raw-unicode-escape 'A'*10000
391 (+1229%) 334 (+1456%) 576 (+802%) 5198 encode raw-unicode-escape '\x80'*10000
391 (+1402%) 335 (+1653%) 579 (+914%) 5873 encode raw-unicode-escape '\x80'+'A'*9999
869 (-25%) 687 (-5%) 356 (+83%) 652 encode raw-unicode-escape '\u0100'*10000
391 (+46%) 158 (+260%) 214 (+166%) 569 encode raw-unicode-escape '\u0100'+'A'*9999
391 (+46%) 158 (+260%) 214 (+166%) 569 encode raw-unicode-escape '\u0100'+'\x80'*9999
873 (-25%) 682 (-4%) 356 (+83%) 652 encode raw-unicode-escape '\u8000'*10000
391 (+46%) 158 (+260%) 214 (+166%) 569 encode raw-unicode-escape '\u8000'+'A'*9999
391 (+46%) 157 (+262%) 214 (+166%) 569 encode raw-unicode-escape '\u8000'+'\x80'*9999
869 (-25%) 688 (-5%) 345 (+90%) 656 encode raw-unicode-escape '\u8000'+'\u0100'*9999
917 (+4%) 859 (+11%) 532 (+79%) 952 encode raw-unicode-escape '\U00010000'*10000
392 (-15%) 182 (+84%) 260 (+28%) 334 encode raw-unicode-escape '\U00010000'+'A'*9999
392 (-15%) 182 (+83%) 260 (+28%) 333 encode raw-unicode-escape '\U00010000'+'\x80'*9999
870 (-15%) 672 (+10%) 355 (+108%) 738 encode raw-unicode-escape '\U00010000'+'\u0100'*9999
871 (-16%) 672 (+9%) 355 (+106%) 730 encode raw-unicode-escape '\U00010000'+'\u8000'*9999 |
|
Date |
User |
Action |
Args |
2016-06-19 20:10:22 | serhiy.storchaka | set | recipients:
+ serhiy.storchaka, lemburg, pitrou, vstinner, benjamin.peterson, ezio.melotti |
2016-06-19 20:10:21 | serhiy.storchaka | set | messageid: <1466367021.04.0.582283428842.issue16334@psf.upfronthosting.co.za> |
2016-06-19 20:10:20 | serhiy.storchaka | link | issue16334 messages |
2016-06-19 20:10:19 | serhiy.storchaka | create | |
|