clang vs gcc build performance (executable not build time)
Arnaud Versini
arnaud.versini at gmail.com
Sat Nov 27 10:06:11 UTC 2021
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 <michael.meeks at collabora.com> 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.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.
>
> 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.meeks at collabora.com <><, GM Collabora Productivity
> Hangout: mejmeeks at gmail.com, Skype: mmeeks
> (M) +44 7795 666 147 - timezone usually UK / Europe
>
--
Arnaud Versini
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice/attachments/20211127/7c2798a5/attachment.htm>
More information about the LibreOffice
mailing list