Re: JIT compiling with LLVM v12 - Mailing list pgsql-hackers

From Noah Misch
Subject Re: JIT compiling with LLVM v12
Date
Msg-id 20180906022651.GA2162795@rfd.leadboat.com
Whole thread Raw
In response to Re: JIT compiling with LLVM v12  (Andres Freund <andres@anarazel.de>)
List pgsql-hackers
On Wed, Sep 05, 2018 at 11:55:39AM -0700, Andres Freund wrote:
> On 2018-08-22 06:20:21 +0000, Noah Misch wrote:
> > I see jit slows the regression tests considerably:
> 
> Is this with LLVM assertions enabled or not?

Without, I think.  I configured them like this:
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$HOME/sw/nopath/llvm       -DCMAKE_BUILD_TYPE=MinSizeRel -DLLVM_USE_LINKER=gold
-DLLVM_TARGETS_TO_BUILD=X86../llvm
 
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$HOME/sw/nopath/llvm-el32  -DCMAKE_BUILD_TYPE=MinSizeRel -DLLVM_USE_LINKER=gold
-DLLVM_PARALLEL_LINK_JOBS=1../llvm
 

> > # mips32el, assert, w/o llvm (buildfarm member topminnow) [1]
> > 28min install-check-*
> > 35min check-pg_upgrade
> >
> > # mips32el, assert, w/  llvm 6.0.1 [1]
> >  63min install-check-*
> > 166min check-pg_upgrade
> 
> But this seems so absurdly large of a difference that I kinda think LLVM
> assertions (wich are really expensive and add O(N) operations in a bunch
> of places) might be to blame.

The 2018-08-25 and 2018-09-01 published runs were far less bad.  Most of the
blame goes to the reason given in the footnote (competing load on a shared
machine), not to JIT.


pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: pgsql: Clean up after TAP tests in oid2name and vacuumlo.
Next
From: Richard Guo
Date:
Subject: Re: Implement predicate propagation for non-equivalence clauses