From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | James Coleman <jtc331(at)gmail(dot)com>, Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, David Rowley <dgrowleyml(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, David Pirotte <dpirotte(at)gmail(dot)com> |
Subject: | Re: Stampede of the JIT compilers |
Date: | 2023-06-26 20:12:34 |
Message-ID: | 20230626201234.cfwdkny7z6mr56zx@awork3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
On 2023-06-24 13:54:53 -0400, Tom Lane wrote:
> I think there is *plenty* of evidence that it is too low, or at least
> that for some reason we are too willing to invoke JIT when the result
> is to make the overall cost of a query far higher than it is without.
> Just see all the complaints on the mailing lists that have been
> resolved by advice to turn off JIT. You do not even have to look
> further than our own regression tests: on my machine with current
> HEAD, "time make installcheck-parallel" reports
>
> real 0m8.544s
> user 0m0.906s
> sys 0m0.863s
>
> for a build without --with-llvm, and
>
> real 0m13.211s
> user 0m0.917s
> sys 0m0.811s
IIRC those are all, or nearly all, cases where we have no stats and the plans
have ridiculous costs (and other reasons like enable_seqscans = false and
using seqscans nonetheless). In those cases no cost based approach will work
:(.
> I don't know whether raising the default would be enough to fix that
> in a nice way, and I certainly don't pretend to have a specific value
> to offer. But it's undeniable that we have a serious problem here,
> to the point where JIT is a net negative for quite a few people.
Yea, I think at the moment it's not working well enough to be worth having on
by default. Some of that is due to partitioning having become much more
common, leading to much bigger plan trees, some of it is just old stuff that I
had hoped could be addressed more easily.
FWIW, Daniel Gustafsson is hacking on an old patch of mine that was working
towards making the JIT result cacheable (and providing noticeably bigger
performance gains).
> > In that context capping the number of backends compiling, particularly
> > where plans (and JIT?) might be cached, could well save us (depending
> > on workload).
>
> TBH I do not find this proposal attractive in the least.
Yea, me neither. It doesn't address any of the actual problems and will add
new contention.
Greetings,
Andres Freund
From | Date | Subject | |
---|---|---|---|
Next Message | James Coleman | 2023-06-26 20:16:33 | Re: Analyze on table creation? |
Previous Message | Mikhail Gribkov | 2023-06-26 20:10:00 | Re: Fixing tab-complete for dollar-names |