Re: Inheritance planner CPU and memory usage change since 9.3.2 - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Inheritance planner CPU and memory usage change since 9.3.2
Date
Msg-id CA+Tgmob-kc6nLdYRVKn75s8b+v20u0Ndw00oJp_q1V-YZGbXEg@mail.gmail.com
Whole thread Raw
In response to Re: Inheritance planner CPU and memory usage change since 9.3.2  (Dean Rasheed <dean.a.rasheed@gmail.com>)
List pgsql-hackers
On Sun, Jun 21, 2015 at 5:45 AM, Dean Rasheed <dean.a.rasheed@gmail.com> wrote:
> On 21 June 2015 at 05:27, Robert Haas <robertmhaas@gmail.com> wrote:
>> On Sat, Jun 20, 2015 at 6:48 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>> I propose instead the attached patch, which operates by identifying which
>>> of the append_rel_list entries actually contain subquery references, and
>>> copying only those; the other ones are just linked into the child's
>>> append_rel_list by reference, which is okay because they won't get
>>> modified.
>>
>> Better than unpatched, definitely!  Not sure how it compares to my patch.
>>
>
> I tested on my machine (optimised build, asserts off). With HEAD I got:
>
> Q1: 8076ms
> Q2: 7165ms
> Q3: 4027ms
> Q4: OOM (killed by kernel, used > 16GB RAM)
> Q5: 4131ms
>
> The machine only has 16GB of RAM and almost no swap, so it wasn't able to do Q4.
>
> With Robert's patch:
>
> Q1: 1121ms
> Q2: 542ms
> Q3: 498ms
> Q4: 50763ms (used 3GB RAM)
> Q5: 556ms
>
> and with Tom's patch:
>
> Q1: 2264ms
> Q2: 3785ms
> Q3: 507ms
> Q4: 50851ms (used 3GB RAM)
> Q5: 558ms
>
> However, there's an obvious improvement that can be made to Tom's
> patch -- having computed modifiableARIindexes, you may as well use it
> in the innermost loop to only apply ChangeVarNodes() to those
> AppendRelInfo's that can actually change, rather than having it trawl
> through all the other ones that we know won't be touched.
>
> With that improvement (attached), the timings become:
>
> Q1: 1148ms
> Q2: 547ms
> Q3: 505ms
> Q4: 51325ms
> Q5: 544ms
>
> i.e., basically the same as Robert's patch.

Cool.  That sounds good.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Dean Rasheed
Date:
Subject: Re: Inheritance planner CPU and memory usage change since 9.3.2
Next
From: Thomas Munro
Date:
Subject: get_relation_info comment out of sync