New submission from Sergey Fedoseev <fedoseev.ser...@gmail.com>:
I reworked implementation of binascii.a2b_base64() and there is significant speedup: $ python -m perf timeit --compare-to ~/tmp/cpython-master-venv/bin/python -s "from binascii import b2a_base64, a2b_base64; s = b2a_base64(1000 * b'b')" "a2b_base64(s)" /home/sergey/tmp/cpython-master-venv/bin/python: ..................... 3.43 us +- 0.01 us /home/sergey/tmp/cpython-dev-venv/bin/python: ..................... 1.52 us +- 0.01 us Mean +- std dev: [/home/sergey/tmp/cpython-master-venv/bin/python] 3.43 us +- 0.01 us -> [/home/sergey/tmp/cpython-dev-venv/bin/python] 1.52 us +- 0.01 us: 2.26x faster (-56%) $ python -m perf timeit --compare-to ~/tmp/cpython-master-venv/bin/python -s "from binascii import b2a_base64, a2b_base64; s = b2a_base64(1 * b'b')" "a2b_base64(s)" /home/sergey/tmp/cpython-master-venv/bin/python: ..................... 76.0 ns +- 0.2 ns /home/sergey/tmp/cpython-dev-venv/bin/python: ..................... 69.2 ns +- 0.1 ns Mean +- std dev: [/home/sergey/tmp/cpython-master-venv/bin/python] 76.0 ns +- 0.2 ns -> [/home/sergey/tmp/cpython-dev-venv/bin/python] 69.2 ns +- 0.1 ns: 1.10x faster (-9%) ---------- components: Extension Modules messages: 325860 nosy: sir-sigurd priority: normal severity: normal status: open title: improve performance of binascii.a2b_base64() type: performance versions: Python 3.8 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue34749> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com