<div class="gmail_quote">On Mon, Jun 11, 2012 at 8:13 PM, James Dennett <span dir="ltr"><<a href="mailto:james.dennett@gmail.com" target="_blank">james.dennett@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Mon, Jun 11, 2012 at 10:16 AM, sccllghn <<a href="mailto:sccllghn@yahoo.com">sccllghn@yahoo.com</a>> wrote:<br>
> I am trying to use Clang for parsing some C++ programs and have had good<br>
> success. The problem is performance. I can parse about 400,000 lines of C<br>
> code scattered in 400 files in about 25 minutes on a really fast machine.<br>
<br>
</div>That is odd.  Clang's parser is pretty fast, as C++ parsers go.  Have<br>
you tried using an optimized build of Clang to compiler your 400<br>
files?  400,000 lines isn't much code, and 25 minutes is a long time.<br></blockquote><div><br></div><div>If it's single threaded that is actually in line with numbers I have run (3.75 seconds per TU on average). I also think I saw some regressions here over the past year, but we'll need to investigate more. My numbers are mostly C++ code though, so that might be apples and oranges.</div>
<div><br>Cheers,</div><div>/Manuel</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
> I<br>
> think that this is not very good, considering that I am doing a lot less<br>
> than a compiler. Am I mistaken in my expectations?<br>
<br>
</div>A rule of thumb is that, when not optimizing, lexing/parsing takes<br>
about half of the total compiler time.  If you do no work beyond<br>
parsing you might be able to be twice as fast as clang++ when it's<br>
compiling.<br>
<div class="im"><br>
> My sense is that to get a real bump in performance, I need to use<br>
> pre-compiled header files, because the vast majority of parsing is being<br>
> done over and over.<br>
<br>
</div>My guess is that something is strange in your setup, because I'd<br>
expect that Clang is faster than that.  How long does it take to<br>
*compile* your 400k LOC?<br>
<span class="HOEnZb"><font color="#888888"><br>
-- James<br>
</font></span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
</div></div></blockquote></div><br>