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.
Created on 2012年05月21日 22:19 by serhiy.storchaka, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| decode_charmap.patch | serhiy.storchaka, 2012年05月21日 22:19 | review | ||
| charmapdecodebench.py | serhiy.storchaka, 2012年05月21日 22:20 | Benchmark script | ||
| bench-diff.py | serhiy.storchaka, 2012年05月21日 22:21 | Benchmark results comparator | ||
| Messages (3) | |||
|---|---|---|---|
| msg161301 - (view) | Author: Serhiy Storchaka (serhiy.storchaka) * (Python committer) | Date: 2012年05月21日 22:19 | |
Charmap decoders are not as important as UTF decoders, but are still widely used. In Python 3.3 with PEP 393 they slowed down 4x. The proposed patch restores the performance. Optimized only the most common case, when the decoder is specified by the UCS2 table with length >= 256. Map-based decoders translated to table-based. UCS1 tables widened to UCS2 by adding 257th fake characters. Benchmark results: 3.2 3.3(vanilla) 3.3(patched) cp1251 'A'*10000 111 (+10%) 31 (+294%) 122 cp1251 '\xa0'*10000 111 (+8%) 29 (+314%) 120 cp1251 '\u0402'*10000 111 (+6%) 25 (+372%) 118 |
|||
| msg162989 - (view) | Author: Roundup Robot (python-dev) (Python triager) | Date: 2012年06月16日 20:54 | |
New changeset 8f3a5308f50b by Antoine Pitrou in branch 'default': Issue #14874: Restore charmap decoding speed to pre-PEP 393 levels. http://hg.python.org/cpython/rev/8f3a5308f50b |
|||
| msg162990 - (view) | Author: Antoine Pitrou (pitrou) * (Python committer) | Date: 2012年06月16日 20:54 | |
Thank you for the patch! Now pushed to 3.3. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:30 | admin | set | github: 59079 |
| 2012年06月16日 20:54:32 | pitrou | set | status: open -> closed resolution: fixed messages: + msg162990 stage: patch review -> resolved |
| 2012年06月16日 20:54:06 | python-dev | set | nosy:
+ python-dev messages: + msg162989 |
| 2012年06月16日 16:44:22 | pitrou | set | nosy:
+ loewis |
| 2012年06月15日 17:51:10 | pitrou | set | stage: patch review |
| 2012年05月21日 22:21:38 | serhiy.storchaka | set | files: + bench-diff.py |
| 2012年05月21日 22:20:13 | serhiy.storchaka | set | files: + charmapdecodebench.py |
| 2012年05月21日 22:19:29 | serhiy.storchaka | create | |