[issue29029] Faster positional arguments parsing in PyArg_ParseTupleAndKeywords

2017-01-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Thank you for your reviews Inada and Victor. Thank you for rebasing the patch 
Victor.

I were going first to try an alternative patch, maybe less efficient, but 
allowing to share more code. But since the code is changed so fast, it is 
better to commit the ready patch.

--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue29029] Faster positional arguments parsing in PyArg_ParseTupleAndKeywords

2017-01-17 Thread Roundup Robot

Roundup Robot added the comment:

New changeset a8563ef0eb8a by Serhiy Storchaka in branch 'default':
Issue #29029: Speed up processing positional arguments in
https://hg.python.org/cpython/rev/a8563ef0eb8a

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue29029] Faster positional arguments parsing in PyArg_ParseTupleAndKeywords

2017-01-16 Thread INADA Naoki

INADA Naoki added the comment:

LGTM again.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue29029] Faster positional arguments parsing in PyArg_ParseTupleAndKeywords

2017-01-16 Thread STINNER Victor

STINNER Victor added the comment:

> Unpatched:  Median +- std dev: 2.01 us +- 0.09 us
> Patched:Median +- std dev: 1.23 us +- 0.03 us

Oh wow, impressive speedup! As usual, good job Serhiy ;-)

PyArg_ParseTupleAndKeywords-faster-positional-args-parse-2.patch: LGTM! Can you 
please push it?

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue29029] Faster positional arguments parsing in PyArg_ParseTupleAndKeywords

2017-01-16 Thread STINNER Victor

STINNER Victor added the comment:

Oh, I missed this issue. Since I made minor cleanup recently, I took the 
liberty of rebasing your patch.

I also pushed your "keywords => kwargs" change, just to make the patch simpler 
to review.

--
nosy: +haypo
Added file: 
http://bugs.python.org/file46307/PyArg_ParseTupleAndKeywords-faster-positional-args-parse-2.patch

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue29029] Faster positional arguments parsing in PyArg_ParseTupleAndKeywords

2017-01-16 Thread Roundup Robot

Roundup Robot added the comment:

New changeset a36e60c5fee0 by Victor Stinner in branch 'default':
Rename keywords to kwargs in getargs.c
https://hg.python.org/cpython/rev/a36e60c5fee0

--
nosy: +python-dev

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue29029] Faster positional arguments parsing in PyArg_ParseTupleAndKeywords

2017-01-15 Thread INADA Naoki

INADA Naoki added the comment:

LGTM

--
nosy: +inada.naoki

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue29029] Faster positional arguments parsing in PyArg_ParseTupleAndKeywords

2016-12-20 Thread Serhiy Storchaka

New submission from Serhiy Storchaka:

Proposed patch speeds up parsing positional arguments in 
PyArg_ParseTupleAndKeywords().

$ ./python -m perf timeit "1 .to_bytes(1, 'little', signed=False)"
Unpatched:  Median +- std dev: 2.01 us +- 0.09 us
Patched:Median +- std dev: 1.23 us +- 0.03 us

Currently names of all passed positional argument are looked up in the kwargs 
dictionary for checking if the argument is passed as positional and keyword 
argument. With the patch this is checked only if there are unhandled keyword 
arguments after parsing keyword arguments that don't passed as positional 
arguments.

The same optimization also is applied to _PyArg_ParseTupleAndKeywordsFast() and 
like, but the effect is much smaller.

The patch also includes tiny refactoring.

--
components: Interpreter Core
files: PyArg_ParseTupleAndKeywords-faster-positional-args-parse.patch
keywords: patch
messages: 283711
nosy: serhiy.storchaka
priority: normal
severity: normal
stage: patch review
status: open
title: Faster positional arguments parsing in PyArg_ParseTupleAndKeywords
type: performance
versions: Python 3.7
Added file: 
http://bugs.python.org/file45977/PyArg_ParseTupleAndKeywords-faster-positional-args-parse.patch

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com