[cfe-dev] Clang on Windows targteing gcc compiles very slowly

Dennis Luehring dl.soluz at gmx.net
Sun May 31 00:06:27 PDT 2015


>Huh, that's surprising. Do you happen to
>have VS2013 too? What are you
>compiling? Anything open-source?

just VS2010 - and a very closed source project, 5 libs, ~50-100kLOC, around 1200 Warnings (legacy code)

latest Xerces C++ is another example (does not fully link under cl-clang) - some warnings
svn co https://svn.apache.org/repos/asf/xerces/c/tags/Xerces-C_3_1_2
VC2010: ~1:59min
cl-clang: stopped at ~6:15 with link error

or latests DosBox (gives compiler bug report) - many warnings
VC2010: ~1:25
cl-clang: stopped at ~3:19 with compiler-bug report

it seems that the cl-clang guys should do compiletests against more 
dirty projects - not against
the super-clean chrome sources :)


Am 31.05.2015 um 08:21 schrieb Nico Weber:
> Huh, that's surprising. Do you happen to have VS2013 too? What are you
> compiling? Anything open-source?
>
> That build is release but with asserts enabled. Disabling asserts saves
> ~30% of runtime, but that would still be 1:30min which is still slower than
> VS. We only compared to 2013 though, maybe 2010 is faster than 2013?
>
> On Sat, May 30, 2015 at 11:14 PM, Dennis Luehring <dl.soluz at gmx.net> wrote:
>
> > VS2010 ~1:12min
> > cl-clang (plugin download from 5.5.2015) ~2:15min
> > clang-238562 ~2:11min
> >
> >
> > Am 31.05.2015 um 07:48 schrieb Nico Weber:
> >
> >> Can you try the clang-cl.exe in
> >>
> >> http://commondatastorage.googleapis.com/chromium-browser-clang/index.html?path=Win/
> >> ?
> >>
> >> On Sat, May 30, 2015 at 10:46 PM, Dennis Luehring <dl.soluz at gmx.net>
> >> wrote:
> >>
> >> > im using the cl-clang vstudio plugin binary from the homepage and it
> >> > compiles slower (nearly 2 times i think) then cl
> >> >
> >> >
> >> > Am 31.05.2015 um 07:40 schrieb Nico Weber:
> >> >
> >> >> Can you post the cmake invocation you use?
> >> >>
> >> >> In general, we see clang being faster than gcc on linux/mac, and about
> >> as
> >> >> fast as cl.exe on windows on our bots. It sounds like you don't
> >> configure
> >> >> your build correctly. (clang-built-by-clang is a bit faster than
> >> >> clang-built-by-cl on windows; I don't know how clang-built-by-clang and
> >> >> clang-built-by-gcc on windows compare. But if you're seeing a 2-3x
> >> >> slowdown, you're probably accidentally doing a debug build of clang
> >> >> somehow.)
> >> >>
> >> >> On Sat, May 30, 2015 at 9:57 PM, Francois Pichet <pichet2000 at gmail.com
> >> >
> >> >> wrote:
> >> >>
> >> >> > I just noticed that assert is turned on even in Release on Windows
> >> >> > Is that on purpose? (seems like a bug to me)
> >> >> >
> >> >> > Anyway if I build clang with "LLVM_ENABLE_ASSERTIONS:BOOL=OFF" the
> >> build
> >> >> > get stuck at verifier.cpp from LLVMCore. CL.exe is stuck in an
> >> infinite
> >> >> > loop.
> >> >> >
> >> >> > I am using MSVC 2013 Update 5.
> >> >> >
> >> >> > On Sat, May 30, 2015 at 10:30 AM, Reid Kleckner <rnk at google.com>
> >> wrote:
> >> >> >
> >> >> >> You said you configured in release mode, but assertions might still
> >> be
> >> >> >> on. That accounts for a 2x slowdown. Otherwise I'd say that we
> >> haven't
> >> >> >> profiled and optimized clang on windows very much.
> >> >> >>
> >> >> >> Sent from phone
> >> >> >> On May 29, 2015 4:51 PM, "Edward Diener" <
> >> >> eldlistmailingz at tropicsoft.com>
> >> >> >> wrote:
> >> >> >>
> >> >> >>> I test Boost libraries mostly on Windows using various version of
> >> gcc
> >> >> >>> 4.3 and up, VC++ 8.0 and up, and the latest version of clang which
> >> I
> >> >> build
> >> >> >>> from source using mingw/gcc-4.8.1 in release mode.
> >> >> >>>
> >> >> >>> While clang is a great compiler when it comes to testing code,
> >> getting
> >> >> >>> intelligent error message, and implementing the latest C++
> >> standard,
> >> >> it is
> >> >> >>> noticably slower ( 2x or 3x at minimum ) than the other compilers I
> >> >> use.
> >> >> >>>
> >> >> >>> The clang command line parameters usually being used are usually
> >> along
> >> >> >>> the lines of:
> >> >> >>>
> >> >> >>> -c -x c++ -O0 -g -fno-inline -Wall -g -march=i686 -m32
> >> >> >>>
> >> >> >>> with the addition of 'std=c++11' occasionally depending on the
> >> test.
> >> >> >>>
> >> >> >>> Does anybody have any idea why clang is so much slower than any of
> >> the
> >> >> >>> other compilers I use ? It does not seem to matter whether it is in
> >> >> C++03
> >> >> >>> mode or C++11 mode, it is noticeably slower than the other
> >> compilers.
> >> >> >>>
> >> >> >>> _______________________________________________
> >> >> >>> cfe-dev mailing list
> >> >> >>> cfe-dev at cs.uiuc.edu
> >> >> >>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> >> >> >>>
> >> >> >>
> >> >> >> _______________________________________________
> >> >> >> cfe-dev mailing list
> >> >> >> cfe-dev at cs.uiuc.edu
> >> >> >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> >> >> >>
> >> >> >>
> >> >> >
> >> >> > _______________________________________________
> >> >> > cfe-dev mailing list
> >> >> > cfe-dev at cs.uiuc.edu
> >> >> > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> _______________________________________________
> >> >> cfe-dev mailing list
> >> >> cfe-dev at cs.uiuc.edu
> >> >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> >> >>
> >> >
> >> > _______________________________________________
> >> > 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