Re: Query JITing with LLVM ORC

2022-09-21 Thread João Paulo Labegalini de Carvalho
Tom & Thomas: Thank you so much, those a very useful comments. I noticed that I didn't make my intentions very clear. My teams goal is to evaluate if there are any gains in JITing PostgreSQL itself, or at least parts of it, and not the expressions or parts of a query. The rationale to use Postgr

Re: Query JITing with LLVM ORC

2022-09-21 Thread Thomas Munro
On Thu, Sep 22, 2022 at 10:04 AM João Paulo Labegalini de Carvalho wrote: >building with and w/o passing --with-llvm BTW you can also just turn it off with runtime settings, no need to rebuild.

Re: Query JITing with LLVM ORC

2022-09-21 Thread Thomas Munro
On Thu, Sep 22, 2022 at 10:35 AM Tom Lane wrote: > =?UTF-8?Q?Jo=C3=A3o_Paulo_Labegalini_de_Carvalho?= > writes: > > Good to know. I compiled from the REL_14_5 tag and did a simple experiment > > to contrast building with and w/o passing --with-llvm. > > I ran the TPC-C benchmark with 1 warehouse

Re: Query JITing with LLVM ORC

2022-09-21 Thread Tom Lane
=?UTF-8?Q?Jo=C3=A3o_Paulo_Labegalini_de_Carvalho?= writes: > Good to know. I compiled from the REL_14_5 tag and did a simple experiment > to contrast building with and w/o passing --with-llvm. > I ran the TPC-C benchmark with 1 warehouse, 10 terminals, 20min of ramp-up, > and 120 of measurement t

Re: Query JITing with LLVM ORC

2022-09-21 Thread João Paulo Labegalini de Carvalho
Hi Thomas, It JITs expressions but not whole queries. Thanks for the clarification. > Query execution at the > tuple-flow level is still done using a C call stack the same shape as > the query plan, but it *could* be transformed to a different control > flow that could be run more efficiently

Re: Query JITing with LLVM ORC

2022-09-21 Thread Thomas Munro
On Thu, Sep 22, 2022 at 4:17 AM João Paulo Labegalini de Carvalho wrote: > I am working on a project with LLVM ORC that led us to PostgreSQL as a target > application. We were surprised by learning that PGSQL already uses LLVM ORC > to JIT certain queries. It JITs expressions but not whole quer

Query JITing with LLVM ORC

2022-09-21 Thread João Paulo Labegalini de Carvalho
Hi all, I am working on a project with LLVM ORC that led us to PostgreSQL as a target application. We were surprised by learning that PGSQL already uses LLVM ORC to JIT certain queries. I would love to know what motivated this feature and for what it is being currently used for, as it is not enab