Re: clang vs gcc build performance (executable not build time)

2021-12-09 Thread Miklos Vajna
Hi Stephan,

On Wed, Dec 08, 2021 at 02:35:00PM +0100, Stephan Bergmann 
 wrote:
> Does 
> 
> "Update for current master and Clang binaries" cover your needs there?

Yes, indeed.

Thanks,

Miklos


Re: clang vs gcc build performance (executable not build time)

2021-12-08 Thread Stephan Bergmann

On 26/11/2021 09:27, Miklos Vajna wrote:

On Wed, Nov 24, 2021 at 10:58:12AM +0100, Stephan Bergmann 
 wrote:

There's the horribly outdated
 that Ilmari
already mentioned,  But setting up LLVM/Clang (which should only be
necessary if you want to --enable-compiler-plugins, which is my motivation
for doing those clang-cl builds; otherwise, the Clang bundled with VS
probably works fine) and doing a LO build with it has become much simpler
since when I wrote that.  (If there is demand, I could try and update the
wiki page, just ping me.)


If you have a bit of time to update that, I would appreciate it. I hit
some puzzling MSVC compile error in windows-specific code form time to
time, and it's helpful to understand if the problem is specific to MSVC
or a general C++ thing.


Does 
 
"Update for current master and Clang binaries" cover your needs there? 
(Thanks a lot to Luboš for updating that!)




Re: clang vs gcc build performance (executable not build time)

2021-12-08 Thread Luboš Luňák
On Monday 22 of November 2021, Arnaud Versini wrote:
> I hope this could be an idea of improvement ! Next crazy test I would like
> to do is between MSVC and clang on windows ! But it seems harder !

 In case you still struggle with this, I made some fixes a couple of days back 
and updated https://wiki.documentfoundation.org/Development/clang-cl, so 
hopefully building current master with Clang-cl should be now simple enough.

-- 
 Luboš Luňák
 l.lu...@collabora.com


Re: clang vs gcc build performance (executable not build time)

2021-12-06 Thread Arnaud Versini
Hi everyone,

I just pushed my autogen files on github :
https://github.com/ArnaudVERSINI/LibreOffice_autogens

Thanks

Le lun. 22 nov. 2021 à 17:28, Arnaud Versini  a
écrit :

> Hi everyone,
>
> I just tested libreoffice performance between GCC + gold + libstdc++,
> clang + lld + libstdc++ and clang + lld + libc++ and noticed that gcc
> builds are slower (at least in this case). I will write a blog article with
> all the process to reproduce but small version, it just converts
> openDocument standart files (ODF 1.0 to 1.3) to PDF. There is no
> significant difference between both clang builds (changing lib C++ from
> libstdc++ to libc++) but gcc is slower than clang. Of course all builds
> don't use system libraries in this case to compare between lib C++, and
> builds are optimised and use LTO.
>
>
> OpenSUSE 7.2 Clang + libc++ Clang + std Gcc + std
> Run 1 50,923045275 45,456441587 45,878275287 49,487550577
> Run 2 50,360027388 43,83441037 44,303120572 47,898307652
> Run 3 50,258628137 43,552443057 44,332110013 47,596628518
> Run 4 50,062155622 43,587905602 44,616728628 47,430735675
> Run 5 53,567235331 43,548408389 44,561502427 47,727024813
> Run 6 50,354870307 43,877387065 44,107891362 47,444552655
> Run 7 49,663738973 43,92048805 44,583599634 47,293633635
> Run 8 49,780141995 43,843555496 44,055990454 47,561677627
> Run 9 49,763425026 43,398042427 44,011950682 47,65275752
> Run 10 50,197944032 44,153460819 44,303763557 47,974880802
> Average 50,4931212086 43,9172542862 44,4754932616 47,8067749474
>
> For information I use openSUSE Tumbleweed latest release.
>
> I also noticed that libengine12 is really bigger with GCC but I've not
> have that data on me now.
>
> I hope this could be an idea of improvement ! Next crazy test I would like
> to do is between MSVC and clang on windows ! But it seems harder !
> --
> Arnaud Versini
>


-- 
Arnaud Versini


Re: clang vs gcc build performance (executable not build time)

2021-11-27 Thread Arnaud Versini
Hi Michael,

FYI libEngine12 with gcc on my machine is 41MiB with clang and 120 with
gcc, not sure this is normal

Le mar. 23 nov. 2021 à 16:11, Michael Meeks  a
écrit :

> Hi Arnaud,
>
> On 22/11/2021 16:28, Arnaud Versini wrote:
> > I just tested libreoffice performance between GCC + gold + libstdc++,
> > clang + lld + libstdc++ and clang + lld + libc++ and noticed that gcc
> > builds are slower (at least in this case).
>
> That sounds like an interesting result; thanks for measuring.
>
> > I will write a blog article
> > with all the process to reproduce but small version, it just converts
> > openDocument standart files (ODF 1.0 to 1.3) to PDF.
>
> Fair enough =) its good to see the general stability of the
> benchmark
> numbers.
>
> > There is no
> > significant difference between both clang builds (changing lib C++ from
> > libstdc++ to libc++) but gcc is slower than clang. Of course all builds
> > don't use system libraries in this case to compare between lib C++, and
> > builds are optimised and use LTO.
>
> Looks interesting.
>
> Lubos - what are our build defaults currently and do you have
> thoughts
> on changing them ? it would be great to poke at Arnaud's blog / work
> as/when it gets published =)
>
> >   OpenSUSE 7.2Clang + libc++  Clang + std Gcc + std
> > Run 1 50,92304527545,45644158745,878275287
> 49,487550577
> > Run 2 50,36002738843,83441037 44,303120572
> 47,898307652
> > Run 3 50,25862813743,55244305744,332110013
> 47,596628518
> > Run 4 50,06215562243,58790560244,616728628
> 47,430735675
> > Run 5 53,56723533143,54840838944,561502427
> 47,727024813
> > Run 6 50,35487030743,87738706544,107891362
> 47,444552655
> > Run 7 49,66373897343,92048805 44,583599634
> 47,293633635
> > Run 8 49,78014199543,84355549644,055990454
> 47,561677627
> > Run 9 49,76342502643,39804242744,01195068247,65275752
> > Run 1050,19794403244,15346081944,303763557
> 47,974880802
> > Average   50,4931212086   43,9172542862   44,4754932616
>  47,8067749474
> >
> > For information I use openSUSE Tumbleweed latest release.
> >
> > I also noticed that libengine12 is really bigger with GCC but I've not
> > have that data on me now.
>
> That's interesting too - how much bigger? I would assume that we
> use
> -Os to optimize for size as well as for speed: since huge binaries may
> be more optimal in theory but can be much slower to load and kill your
> cache in practice: but it sounds like this is some combination of bigger
> & slower.
>

FYI libEngine12 with gcc on my machine is 41MiB with clang and 120 with
gcc, not sure this is normal

>
> I wonder what the compile option difference is.
>
> > I hope this could be an idea of improvement ! Next crazy test I would
> > like to do is between MSVC and clang on windows ! But it seems harder !
>
> Ah - now that would be lovely being able to use the same compiler
> everywhere =) would be really interesting to compare the performance there.
>
> Good work !
>
> Michael.
>
> --
> michael.me...@collabora.com <><, GM Collabora Productivity
> Hangout: mejme...@gmail.com, Skype: mmeeks
> (M) +44 7795 666 147 - timezone usually UK / Europe
>


-- 
Arnaud Versini


Re: clang vs gcc build performance (executable not build time)

2021-11-26 Thread Luboš Luňák
On Friday 26 of November 2021, Miklos Vajna wrote:
> On Wed, Nov 24, 2021 at 10:58:12AM +0100, Stephan Bergmann 
 wrote:
> > There's the horribly outdated
> >  that Ilmari
> > already mentioned,  But setting up LLVM/Clang (which should only be
> > necessary if you want to --enable-compiler-plugins, which is my
> > motivation for doing those clang-cl builds; otherwise, the Clang bundled
> > with VS probably works fine) and doing a LO build with it has become much
> > simpler since when I wrote that.  (If there is demand, I could try and
> > update the wiki page, just ping me.)
>
> If you have a bit of time to update that, I would appreciate it.

 Last time I tried clang-cl I had to do quite some extra setup IIRC, things 
like having to add -m32/-m64. Since MSVC normally works out of the box, I 
think it'd be better to either have configure check these and add them if 
necessary, or alternatively have some kind of --enable-clang that'd find and 
select clang-cl instead of cl.

-- 
 Luboš Luňák
 l.lu...@collabora.com


Re: clang vs gcc build performance (executable not build time)

2021-11-26 Thread Miklos Vajna
Hi Stephan,

On Wed, Nov 24, 2021 at 10:58:12AM +0100, Stephan Bergmann 
 wrote:
> There's the horribly outdated
>  that Ilmari
> already mentioned,  But setting up LLVM/Clang (which should only be
> necessary if you want to --enable-compiler-plugins, which is my motivation
> for doing those clang-cl builds; otherwise, the Clang bundled with VS
> probably works fine) and doing a LO build with it has become much simpler
> since when I wrote that.  (If there is demand, I could try and update the
> wiki page, just ping me.)

If you have a bit of time to update that, I would appreciate it. I hit
some puzzling MSVC compile error in windows-specific code form time to
time, and it's helpful to understand if the problem is specific to MSVC
or a general C++ thing.

Thanks,

Miklos


Re: clang vs gcc build performance (executable not build time)

2021-11-24 Thread Luboš Luňák
On Tuesday 23 of November 2021, Luboš Luňák wrote:
> > >   OpenSUSE 7.2Clang + libc++  Clang + std Gcc + std
> > > Run 1 50,92304527545,45644158745,87827528749,487550577
>
>  Do you have more tests than this one? With the data you've provided that's
> good enough as an indicator that it should be investigated, but not much
> more, as there can be various factors that cause such results. Maybe Clang
> just happened to optimize better one function that's called often in this
> case, maybe one of the compilers is older than the older, maybe whatever
> else.
>
>  Can you try more different tests?

 By the way, if you're testing LO performance, you should use build settings 
that try to match what is used for release builds. You can find the setups in 
the distro-configs directory. In particular --enable-mergelibs --enable-lto 
are two flags that could have a significant impact on your results.

-- 
 Luboš Luňák
 l.lu...@collabora.com


Re: clang vs gcc build performance (executable not build time)

2021-11-24 Thread Stephan Bergmann

On 23/11/2021 17:11, Luboš Luňák wrote:

On Tuesday 23 of November 2021, Michael Meeks wrote:

On 22/11/2021 16:28, Arnaud Versini wrote:

There is no
significant difference between both clang builds (changing lib C++ from
libstdc++ to libc++) but gcc is slower than clang. Of course all builds
don't use system libraries in this case to compare between lib C++, and
builds are optimised and use LTO.


Looks interesting.

Lubos - what are our build defaults currently and do you have thoughts
on changing them ? it would be great to poke at Arnaud's blog / work
as/when it gets published =)


  That decision is not really up to me. AFAIK projects like Firefox or Chromium
build exclusively using Clang. I wouldn't mind using Clang for everything,
but I don't know how others would see that.


A decision to make Clang the only compiler with which LO can be built, 
or even just a decision to no longer test (via Jenkins and tinderboxes, 
say) with any compiler other than Clang?  I would not be happy with 
that, as I think the heterogeneous set of compilers we target is an 
important factor in keeping our code base healthy and close to 
standards.  And a standards-conforming code base gives us flexibility, 
e.g. when trying out a promising new build toolchain or static or 
dynamic analysis tool.



  Stephan Bergmann does clang-cl builds on Windows, so it should work, although
I don't remember how difficult it is to set up.


There's the horribly outdated 
 that Ilmari 
already mentioned,  But setting up LLVM/Clang (which should only be 
necessary if you want to --enable-compiler-plugins, which is my 
motivation for doing those clang-cl builds; otherwise, the Clang bundled 
with VS probably works fine) and doing a LO build with it has become 
much simpler since when I wrote that.  (If there is demand, I could try 
and update the wiki page, just ping me.)




Re: clang vs gcc build performance (executable not build time)

2021-11-23 Thread Arnaud Versini
Hi Stephan,

Sorry i didn't wrote all explanation yet, it's execution time in seconds to
convert the ODT standart from odt to pdf, I know that's not a complete
performance test but i will add more test.

I didn' measure build time, i guess clang is better but not sure and that's
not what i was checking

Le mar. 23 nov. 2021 à 17:58, Stephan Bergmann  a
écrit :

> On 22/11/2021 17:28, Arnaud Versini wrote:
> > I just tested libreoffice performance between GCC + gold + libstdc++,
> > clang + lld + libstdc++ and clang + lld + libc++ and noticed that gcc
> > builds are slower (at least in this case). I will write a blog article
> > with all the process to reproduce but small version, it just converts
> > openDocument standart files (ODF 1.0 to 1.3) to PDF. There is no
> > significant difference between both clang builds (changing lib C++ from
> > libstdc++ to libc++) but gcc is slower than clang. Of course all builds
> > don't use system libraries in this case to compare between lib C++, and
> > builds are optimised and use LTO.
> >
> >
> >   OpenSUSE 7.2Clang + libc++  Clang + std Gcc + std
> > Run 1 50,92304527545,45644158745,878275287
> 49,487550577
> > Run 2 50,36002738843,83441037 44,303120572
> 47,898307652
> > Run 3 50,25862813743,55244305744,332110013
> 47,596628518
> > Run 4 50,06215562243,58790560244,616728628
> 47,430735675
> > Run 5 53,56723533143,54840838944,561502427
> 47,727024813
> > Run 6 50,35487030743,87738706544,107891362
> 47,444552655
> > Run 7 49,66373897343,92048805 44,583599634
> 47,293633635
> > Run 8 49,78014199543,84355549644,055990454
> 47,561677627
> > Run 9 49,76342502643,39804242744,01195068247,65275752
> > Run 1050,19794403244,15346081944,303763557
> 47,974880802
> > Average   50,4931212086   43,9172542862   44,4754932616
>  47,8067749474
>
> What are you even measuring here, wall-clock time to build LO with the
> various toolchains, or wall-clock time to execute something from the
> resulting buils, or...?  (And what is the unit for those numbers?)
>
>


Re: clang vs gcc build performance (executable not build time)

2021-11-23 Thread Stephan Bergmann

On 22/11/2021 17:28, Arnaud Versini wrote:
I just tested libreoffice performance between GCC + gold + libstdc++, 
clang + lld + libstdc++ and clang + lld + libc++ and noticed that gcc 
builds are slower (at least in this case). I will write a blog article 
with all the process to reproduce but small version, it just converts 
openDocument standart files (ODF 1.0 to 1.3) to PDF. There is no 
significant difference between both clang builds (changing lib C++ from 
libstdc++ to libc++) but gcc is slower than clang. Of course all builds 
don't use system libraries in this case to compare between lib C++, and 
builds are optimised and use LTO.



OpenSUSE 7.2Clang + libc++  Clang + std Gcc + std
Run 1   50,92304527545,45644158745,87827528749,487550577
Run 2   50,36002738843,83441037 44,30312057247,898307652
Run 3   50,25862813743,55244305744,33211001347,596628518
Run 4   50,06215562243,58790560244,61672862847,430735675
Run 5   53,56723533143,54840838944,56150242747,727024813
Run 6   50,35487030743,87738706544,10789136247,444552655
Run 7   49,66373897343,92048805 44,58359963447,293633635
Run 8   49,78014199543,84355549644,05599045447,561677627
Run 9   49,76342502643,39804242744,01195068247,65275752
Run 10  50,19794403244,15346081944,30376355747,974880802
Average 50,4931212086   43,9172542862   44,4754932616   47,8067749474


What are you even measuring here, wall-clock time to build LO with the 
various toolchains, or wall-clock time to execute something from the 
resulting buils, or...?  (And what is the unit for those numbers?)




Re: clang vs gcc build performance (executable not build time)

2021-11-23 Thread Luboš Luňák
On Tuesday 23 of November 2021, Mike Kaganski wrote:
> The only thing I would love to note is that besides performance, there's
> also usability of development tools that matters. If changing to Clang
> as compiler on Windows would mean we can't use Visual Studio's debugger
> (or its use would be less efficient), it would be a really sad thing.
> OTOH, I hope that today, Visual Studio works much better with
> clang-built binaries (it even suggests clang as part of its components
> when installing, which we use for Skia, so we already have it on Windows
> development systems).

 Since we already do use Clang for Skia, you can try. If I set a breakpoint 
e.g. on SkSurface::flushAndSubmit(), I can step there just fine (probably 
helped by building with --enable-skia=debug, which builds without 
optimizations, but I'd expect to work even with normal LO Skia build).

-- 
 Luboš Luňák
 l.lu...@collabora.com


Re: clang vs gcc build performance (executable not build time)

2021-11-23 Thread Caolán McNamara
On Tue, 2021-11-23 at 17:11 +0100, Luboš Luňák wrote:
> > 
> 
>  We don't use -Os, at least my local optimized build doesn't. A bunch
> of solenv/gbuild/platform files do set it, but it doesn't get selected
> here.

>  And according to logs those -Os come from at least 10 years ago, so if
> the idea is to use them, maybe it would be a good idea to re-check the
> effect they have.

We've used -O2 for x86_64 since:

6f335e555da5c14e43d3fdaeb90bcecc80ea4272
"2006/03/06 11:47:01 kendy 1.5.76.1: #i62814#
x86-64: -O2 instead of -Os for the optimized builds"

x86 was -Os back then, and still is. The rest of the platforms using
-Os are probably just cnp or a general vague feeling that -Os is a good
choice for limited hardware.



Re: clang vs gcc build performance (executable not build time)

2021-11-23 Thread Ilmari Lauhakangas

On 23.11.2021 18.11, Luboš Luňák wrote:

On Tuesday 23 of November 2021, Michael Meeks wrote:

On 22/11/2021 16:28, Arnaud Versini wrote:

I hope this could be an idea of improvement ! Next crazy test I would
like to do is between MSVC and clang on windows ! But it seems harder !


  Stephan Bergmann does clang-cl builds on Windows, so it should work, although
I don't remember how difficult it is to set up.


Stephan wrote about it here: 
https://wiki.documentfoundation.org/Development/clang-cl


Ilmari


Re: clang vs gcc build performance (executable not build time)

2021-11-23 Thread Mike Kaganski

On 23.11.2021 18:11, Michael Meeks wrote:

On 22/11/2021 16:28, Arnaud Versini wrote:
Next crazy test I would 
like to do is between MSVC and clang on windows ! But it seems harder !


 Ah - now that would be lovely being able to use the same compiler 
everywhere =) would be really interesting to compare the performance there.


IIRC, there were already comparisons (about other software) clearly 
indicating Clang-built binary performance being superior to created by MSVC.


The only thing I would love to note is that besides performance, there's 
also usability of development tools that matters. If changing to Clang 
as compiler on Windows would mean we can't use Visual Studio's debugger 
(or its use would be less efficient), it would be a really sad thing. 
OTOH, I hope that today, Visual Studio works much better with 
clang-built binaries (it even suggests clang as part of its components 
when installing, which we use for Skia, so we already have it on Windows 
development systems).



--
Best regards,
Mike Kaganski


Re: clang vs gcc build performance (executable not build time)

2021-11-23 Thread Luboš Luňák
On Tuesday 23 of November 2021, Michael Meeks wrote:
> On 22/11/2021 16:28, Arnaud Versini wrote:
> > There is no
> > significant difference between both clang builds (changing lib C++ from
> > libstdc++ to libc++) but gcc is slower than clang. Of course all builds
> > don't use system libraries in this case to compare between lib C++, and
> > builds are optimised and use LTO.
>
>   Looks interesting.
>
>   Lubos - what are our build defaults currently and do you have thoughts
> on changing them ? it would be great to poke at Arnaud's blog / work
> as/when it gets published =)

 That decision is not really up to me. AFAIK projects like Firefox or Chromium 
build exclusively using Clang. I wouldn't mind using Clang for everything, 
but I don't know how others would see that.

> > OpenSUSE 7.2Clang + libc++  Clang + std Gcc + std
> > Run 1   50,92304527545,45644158745,87827528749,487550577

 Do you have more tests than this one? With the data you've provided that's 
good enough as an indicator that it should be investigated, but not much 
more, as there can be various factors that cause such results. Maybe Clang 
just happened to optimize better one function that's called often in this 
case, maybe one of the compilers is older than the older, maybe whatever 
else.

 Can you try more different tests?

> > I also noticed that libengine12 is really bigger with GCC but I've not
> > have that data on me now.
>
>   That's interesting too - how much bigger? I would assume that we use
> -Os to optimize for size as well as for speed: since huge binaries may
> be more optimal in theory but can be much slower to load and kill your
> cache in practice: but it sounds like this is some combination of bigger
> & slower.

 We don't use -Os, at least my local optimized build doesn't. A bunch of 
solenv/gbuild/platform files do set it, but it doesn't get selected here. And 
if it's because my build uses Clang and those -Os get used only with GCC and 
not Clang, then incidentally that would solve the whole mystery. Checking 
what flags get used for both builds is certainly something that should be 
done. Arnaud?

 And according to logs those -Os come from at least 10 years ago, so if the 
idea is to use them, maybe it would be a good idea to re-check the effect 
they have. I'm personally sceptical that -Os would help on the desktop.

>   I wonder what the compile option difference is.

 Theoretically there shouldn't be any difference related to performance. There 
are differences in handling PCHs, some debuginfo options may be different and 
stuff like that, but AFAIK performance flags should be the same. Although, as 
said above, maybe that's not the case.

> > I hope this could be an idea of improvement ! Next crazy test I would
> > like to do is between MSVC and clang on windows ! But it seems harder !

 Stephan Bergmann does clang-cl builds on Windows, so it should work, although 
I don't remember how difficult it is to set up.

-- 
 Luboš Luňák
 l.lu...@collabora.com


Re: clang vs gcc build performance (executable not build time)

2021-11-23 Thread Michael Meeks

Hi Arnaud,

On 22/11/2021 16:28, Arnaud Versini wrote:
I just tested libreoffice performance between GCC + gold + libstdc++, 
clang + lld + libstdc++ and clang + lld + libc++ and noticed that gcc 
builds are slower (at least in this case).


That sounds like an interesting result; thanks for measuring.

I will write a blog article 
with all the process to reproduce but small version, it just converts 
openDocument standart files (ODF 1.0 to 1.3) to PDF.


	Fair enough =) its good to see the general stability of the benchmark 
numbers.


There is no 
significant difference between both clang builds (changing lib C++ from 
libstdc++ to libc++) but gcc is slower than clang. Of course all builds 
don't use system libraries in this case to compare between lib C++, and 
builds are optimised and use LTO.


Looks interesting.

	Lubos - what are our build defaults currently and do you have thoughts 
on changing them ? it would be great to poke at Arnaud's blog / work 
as/when it gets published =)



OpenSUSE 7.2Clang + libc++  Clang + std Gcc + std
Run 1   50,92304527545,45644158745,87827528749,487550577
Run 2   50,36002738843,83441037 44,30312057247,898307652
Run 3   50,25862813743,55244305744,33211001347,596628518
Run 4   50,06215562243,58790560244,61672862847,430735675
Run 5   53,56723533143,54840838944,56150242747,727024813
Run 6   50,35487030743,87738706544,10789136247,444552655
Run 7   49,66373897343,92048805 44,58359963447,293633635
Run 8   49,78014199543,84355549644,05599045447,561677627
Run 9   49,76342502643,39804242744,01195068247,65275752
Run 10  50,19794403244,15346081944,30376355747,974880802
Average 50,4931212086   43,9172542862   44,4754932616   47,8067749474

For information I use openSUSE Tumbleweed latest release.

I also noticed that libengine12 is really bigger with GCC but I've not 
have that data on me now.


	That's interesting too - how much bigger? I would assume that we use 
-Os to optimize for size as well as for speed: since huge binaries may 
be more optimal in theory but can be much slower to load and kill your 
cache in practice: but it sounds like this is some combination of bigger 
& slower.


I wonder what the compile option difference is.

I hope this could be an idea of improvement ! Next crazy test I would 
like to do is between MSVC and clang on windows ! But it seems harder !


	Ah - now that would be lovely being able to use the same compiler 
everywhere =) would be really interesting to compare the performance there.


Good work !

Michael.

--
michael.me...@collabora.com <><, GM Collabora Productivity
Hangout: mejme...@gmail.com, Skype: mmeeks
(M) +44 7795 666 147 - timezone usually UK / Europe


clang vs gcc build performance (executable not build time)

2021-11-22 Thread Arnaud Versini
Hi everyone,

I just tested libreoffice performance between GCC + gold + libstdc++, clang
+ lld + libstdc++ and clang + lld + libc++ and noticed that gcc builds are
slower (at least in this case). I will write a blog article with all the
process to reproduce but small version, it just converts openDocument
standart files (ODF 1.0 to 1.3) to PDF. There is no significant difference
between both clang builds (changing lib C++ from libstdc++ to libc++) but
gcc is slower than clang. Of course all builds don't use system libraries
in this case to compare between lib C++, and builds are optimised and use
LTO.


OpenSUSE 7.2 Clang + libc++ Clang + std Gcc + std
Run 1 50,923045275 45,456441587 45,878275287 49,487550577
Run 2 50,360027388 43,83441037 44,303120572 47,898307652
Run 3 50,258628137 43,552443057 44,332110013 47,596628518
Run 4 50,062155622 43,587905602 44,616728628 47,430735675
Run 5 53,567235331 43,548408389 44,561502427 47,727024813
Run 6 50,354870307 43,877387065 44,107891362 47,444552655
Run 7 49,663738973 43,92048805 44,583599634 47,293633635
Run 8 49,780141995 43,843555496 44,055990454 47,561677627
Run 9 49,763425026 43,398042427 44,011950682 47,65275752
Run 10 50,197944032 44,153460819 44,303763557 47,974880802
Average 50,4931212086 43,9172542862 44,4754932616 47,8067749474

For information I use openSUSE Tumbleweed latest release.

I also noticed that libengine12 is really bigger with GCC but I've not have
that data on me now.

I hope this could be an idea of improvement ! Next crazy test I would like
to do is between MSVC and clang on windows ! But it seems harder !
-- 
Arnaud Versini