<div dir="ltr">OK, but if nobody responds within a week we should close it. IMO there's no value in keeping things around that nobody is going to apply. I don't expect that a year from now we'll suddenly a surge of interest in this patch, sorry.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 16, 2016 at 4:25 AM, Artyom Skrobov <span dir="ltr"><<a href="mailto:Artyom.Skrobov@arm.com" target="_blank">Artyom.Skrobov@arm.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thank you very much for your comments,<br>
<br>
I appreciate that we're all volunteers, and that if nobody fancies reviewing a big invasive patch, then it won't get reviewed.<br>
<br>
Still, I want to note that the suggested optimization has a noticeable positive effect on many benchmarks -- even though the effect may only become of practical value in such uncommon use cases as parsing huge data tables.<br>
<br>
As I found out later, JSON wasn't a viable option for storing dozens of megabytes of deeply-nested data, either. To get acceptable deserialization performance, I eventually had to resort to pickled files.<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
-----Original Message-----<br>
From: <a href="mailto:gvanrossum@gmail.com">gvanrossum@gmail.com</a> [mailto:<a href="mailto:gvanrossum@gmail.com">gvanrossum@gmail.com</a>] On Behalf Of Guido van Rossum<br>
Sent: 15 September 2016 17:01<br>
To: Artyom Skrobov<br>
Cc: <a href="mailto:python-dev@python.org">python-dev@python.org</a>; <a href="mailto:brett@python.org">brett@python.org</a>; <a href="mailto:jimjjewett@gmail.com">jimjjewett@gmail.com</a>; nd<br>
Subject: Re: [Python-Dev] Python parser performance optimizations<br>
<br>
I wonder if this patch could just be rejected instead of lingering<br>
forever? It clearly has no champion among the current core devs and<br>
therefore it won't be included in Python 3.6 (we're all volunteers so<br>
that's how it goes).<br>
<br>
The use case for the patch is also debatable: Python's parser wasn't<br>
designed to *efficiently* parse huge data tables like that, and if you<br>
have that much data, using JSON is the right answer. So this doesn't<br>
really scratch anyone's itch except of the patch author (Artyom).<br>
<br>
>From a quick look it seems the patch is very disruptive in terms of<br>
what it changes, so it's not easy to review.<br>
<br>
I recommend giving up, closing the issue as "won't fix", recommending<br>
to use JSON, and moving on. Sometimes a change is just not worth the<br>
effort.<br>
<br>
--Guido<br>
<br>
On Tue, Aug 9, 2016 at 1:59 AM, Artyom Skrobov <<a href="mailto:Artyom.Skrobov@arm.com">Artyom.Skrobov@arm.com</a>> wrote:<br>
> Hello,<br>
><br>
><br>
><br>
> This is a monthly ping to get a review on <a href="http://bugs.python.org/issue26415" rel="noreferrer" target="_blank">http://bugs.python.org/<wbr>issue26415</a><br>
> -- “Excessive peak memory consumption by the Python parser”.<br>
><br>
><br>
><br>
> Following the comments from July, the patches now include updating Misc/NEWS<br>
> and compiler.rst to describe the change.<br>
><br>
><br>
><br>
> The code change itself is still the same as a month ago.<br>
><br>
><br>
><br>
><br>
><br>
> From: Artyom Skrobov<br>
> Sent: 07 July 2016 15:44<br>
> To: <a href="mailto:python-dev@python.org">python-dev@python.org</a>; <a href="mailto:steve@pearwood.info">steve@pearwood.info</a>; <a href="mailto:mafagafogigante@gmail.com">mafagafogigante@gmail.com</a>;<br>
> <a href="mailto:greg.ewing@canterbury.ac.nz">greg.ewing@canterbury.ac.nz</a><br>
> Cc: nd<br>
> Subject: RE: Python parser performance optimizations<br>
><br>
><br>
><br>
> Hello,<br>
><br>
><br>
><br>
> This is a monthly ping to get a review on <a href="http://bugs.python.org/issue26415" rel="noreferrer" target="_blank">http://bugs.python.org/<wbr>issue26415</a><br>
> -- “Excessive peak memory consumption by the Python parser”.<br>
><br>
> The first patch of the series (an NFC refactoring) was successfully<br>
> committed earlier in June, so the next step is to get the second patch, “the<br>
> payload”, reviewed and committed.<br>
><br>
><br>
><br>
> To address the concerns raised by the commenters back in May: the patch<br>
> doesn’t lead to negative memory consumption, of course. The base for<br>
> calculating percentages is the smaller number of the two; this is the same<br>
> style of reporting that perf.py uses. In other words, “200% less memory<br>
> usage” is a threefold shrink.<br>
><br>
><br>
><br>
> The absolute values, and the way they were produced, are all reported under<br>
> the ticket.<br>
><br>
><br>
><br>
><br>
><br>
> From: Artyom Skrobov<br>
> Sent: 26 May 2016 11:19<br>
> To: '<a href="mailto:python-dev@python.org">python-dev@python.org</a>'<br>
> Subject: Python parser performance optimizations<br>
><br>
><br>
><br>
> Hello,<br>
><br>
><br>
><br>
> Back in March, I’ve posted a patch at <a href="http://bugs.python.org/issue26526" rel="noreferrer" target="_blank">http://bugs.python.org/<wbr>issue26526</a> --<br>
> “In parsermodule.c, replace over 2KLOC of hand-crafted validation code, with<br>
> a DFA”.<br>
><br>
><br>
><br>
> The motivation for this patch was to enable a memory footprint optimization,<br>
> discussed at <a href="http://bugs.python.org/issue26415" rel="noreferrer" target="_blank">http://bugs.python.org/<wbr>issue26415</a><br>
><br>
> My proposed optimization reduces the memory footprint by up to 30% on the<br>
> standard benchmarks, and by 200% on a degenerate case which sparked the<br>
> discussion.<br>
><br>
> The run time stays unaffected by this optimization.<br>
><br>
><br>
><br>
> Python Developer’s Guide says: “If you don’t get a response within a few<br>
> days after pinging the issue, then you can try emailing<br>
> <a href="mailto:python-dev@python.org">python-dev@python.org</a> asking for someone to review your patch.”<br>
><br>
><br>
><br>
> So, here I am.<br>
><br>
><br>
> ______________________________<wbr>_________________<br>
> Python-Dev mailing list<br>
> <a href="mailto:Python-Dev@python.org">Python-Dev@python.org</a><br>
> <a href="https://mail.python.org/mailman/listinfo/python-dev" rel="noreferrer" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/python-dev</a><br>
> Unsubscribe:<br>
> <a href="https://mail.python.org/mailman/options/python-dev/guido%40python.org" rel="noreferrer" target="_blank">https://mail.python.org/<wbr>mailman/options/python-dev/<wbr>guido%40python.org</a><br>
><br>
<br>
<br>
<br>
--<br>
--Guido van Rossum (<a href="http://python.org/~guido" rel="noreferrer" target="_blank">python.org/~guido</a>)<br>
<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">--Guido van Rossum (<a href="http://python.org/~guido" target="_blank">python.org/~guido</a>)</div>
</div>