Serhiy Storchaka <storch...@gmail.com> added the comment:

Here are the results of benchmarking (numbers in MB/s).

On 32-bit Linux, AMD Athlon 64 X2 4600+ @ 2.4GHz:

                                          Py2.7         Py3.2         Py3.3     
   patch

utf-8     'A'*10000                       191 (+790%)   1170 (+45%)   1664 
(+2%)    1700
utf-8     '\x80'*10000                    187 (+4%)     219 (-11%)    172 
(+13%)    194
utf-8       '\x80'+'A'*9999               191 (+98%)    1152 (-67%)   376 (+1%) 
    378
utf-8     '\u0100'*10000                  188 (+15%)    221 (-2%)     164 
(+32%)    217
utf-8       '\u0100'+'A'*9999             191 (+103%)   1150 (-66%)   382 (+1%) 
    387
utf-8       '\u0100'+'\x80'*9999          188 (+15%)    221 (-2%)     164 
(+32%)    217
utf-8     '\u8000'*10000                  244 (-12%)    263 (-18%)    191 
(+13%)    215
utf-8       '\u8000'+'A'*9999             191 (+102%)   1174 (-67%)   382 (+1%) 
    386
utf-8       '\u8000'+'\x80'*9999          188 (+15%)    216 (+0%)     164 
(+32%)    217
utf-8       '\u8000'+'\u0100'*9999        188 (+15%)    216 (+0%)     164 
(+32%)    217
utf-8     '\U00010000'*10000              251 (-15%)    248 (-14%)    199 (+7%) 
    213
utf-8       '\U00010000'+'A'*9999         191 (+97%)    1173 (-68%)   372 (+1%) 
    376
utf-8       '\U00010000'+'\x80'*9999      188 (+21%)    221 (+3%)     180 
(+26%)    227
utf-8       '\U00010000'+'\u0100'*9999    188 (+21%)    221 (+3%)     180 
(+26%)    227
utf-8       '\U00010000'+'\u8000'*9999    244 (-9%)     263 (-16%)    201 
(+10%)    221

On 32-bit Linux, Intel Atom N570 @ 1.66GHz:

                                          Py2.7         Py3.2         Py3.3     
   patch

utf-8     'A'*10000                       117 (+414%)   349 (+72%)    597 (+1%) 
    601
utf-8     '\x80'*10000                    86 (-5%)      89 (-8%)      67 (+22%) 
    82
utf-8       '\x80'+'A'*9999               117 (+6%)     340 (-64%)    126 (-2%) 
    124
utf-8     '\u0100'*10000                  86 (-2%)      89 (-6%)      66 (+27%) 
    84
utf-8       '\u0100'+'A'*9999             117 (+5%)     339 (-64%)    78 (+58%) 
    123
utf-8       '\u0100'+'\x80'*9999          86 (-2%)      89 (-6%)      66 (+27%) 
    84
utf-8     '\u8000'*10000                  109 (-26%)    98 (-17%)     71 (+14%) 
    81
utf-8       '\u8000'+'A'*9999             116 (+7%)     339 (-63%)    78 (+59%) 
    124
utf-8       '\u8000'+'\x80'*9999          86 (-3%)      89 (-7%)      66 (+26%) 
    83
utf-8       '\u8000'+'\u0100'*9999        86 (-3%)      89 (-7%)      66 (+26%) 
    83
utf-8     '\U00010000'*10000              106 (-14%)    105 (-13%)    81 (+12%) 
    91
utf-8       '\U00010000'+'A'*9999         116 (+12%)    338 (-62%)    127 (+2%) 
    130
utf-8       '\U00010000'+'\x80'*9999      86 (+6%)      88 (+3%)      69 (+32%) 
    91
utf-8       '\U00010000'+'\u0100'*9999    86 (+6%)      88 (+3%)      69 (+32%) 
    91
utf-8       '\U00010000'+'\u8000'*9999    109 (-24%)    98 (-15%)     74 (+12%) 
    83

The results were ambiguous (everywhere plus, but in different ways). I
would like to see the results for 64-bit platforms. For scripts see
issue14624.

----------

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

Reply via email to