Re: bad JIT decision - Mailing list pgsql-general

From Alvaro Herrera
Subject Re: bad JIT decision
Date
Msg-id 20200727220043.GA29801@alvherre.pgsql
Whole thread Raw
In response to Re: bad JIT decision  (Andres Freund <andres@anarazel.de>)
Responses Re: bad JIT decision
List pgsql-general
On 2020-Jul-24, Andres Freund wrote:

> I think the issue is more that we need to take into accoutn that the
> overhead of JITing scales ~linearly with the number of JITed
> expressions. And that's not done right now.  I've had a patch somewhere
> that had a prototype implementation of changing the costing to be
> #expressions * some_cost, and I think that's a lot more accurate.

I don't quite understand why is it that a table with 1000 partitions
means that JIT compiles the thing 1000 times.  Sure, it is possible that
some partitions have a different column layout, but it seems an easy bet
that most cases are going to have identical column layout, and so tuple
deforming can be shared.  (I'm less sure about sharing a compile of an
expression, since the varno would vary. But presumably there's a way to
take the varno as an input value for the compiled expr too?)  Now I
don't actually know how this works so please correct if I misunderstand
it.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



pgsql-general by date:

Previous
From: Michael Lewis
Date:
Subject: Re: Format generation_expression
Next
From: Scott Ribe
Date:
Subject: Re: bad JIT decision