[cfe-dev] Clang build of PostgreSQL

Nico Weber thakis at chromium.org
Sun Jun 26 20:55:55 PDT 2011


Can you try building with -g0? On Linux, clang is pretty slow and
produces huge binaries due to http://llvm.org/PR7554 when debug
information is emitted.

Nico

On Thu, Jun 23, 2011 at 1:21 PM, Peter Geoghegan <peter at 2ndquadrant.com> wrote:
> Hi,
>
> I apologise in advance if it is inappropriate to post a query like
> this to a dev list, but I found no reasonable alternative.
>
> I work on the PostgreSQL project, and was present at Chris Lattner's
> talk on Clang/LLVM at FOSDEM earlier in the year. At that talk,
> Postgres was specifically cited as an example of a medium sized C
> program that had seen large improvements in compile times when built
> with Clang. Here are his slides:
>
> http://www.scribd.com/doc/48921683/LLVM-Clang-Advancing-Compiler-Technology
>
> I would really like to be able to reproduce some of Chris's work here,
> to demonstrate to the PostgreSQL community.
>
> Here is an example of arguments given to Clang (and gcc) by PG's build system:
>
> /home/peter/build/Release/bin/clang -O2 -Wall -Wmissing-prototypes
> -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
> -Wformat-security -fno-strict-aliasing -fwrapv -I../../../src/include
> -D_GNU_SOURCE   -c -o pg_db_role_setting.o pg_db_role_setting.c
>
> At present, when I build Postgres using gcc (specifically, Fedora's
> build of gcc 4.6), I see a build time of 2 minutes 1 second. For
> Clang, built today from SVN tip, I see a build time of 3m23s. Clang
> has been built with --enable-optimized and --disable-assertions in an
> attempt to be objective.
>
> A small number of TUs, particularly gram.c, seem to be real
> bottlenecks for Clang.
>
> Any advice on improving build times with Clang would be appreciated.
>
> Thanks
> --
> Peter Geoghegan       http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Training and Services
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>




More information about the cfe-dev mailing list