<div dir="ltr"><div dir="ltr"><div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Apr 14, 2021 at 12:59 PM Francesco Bertolaccini via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">On 14/04/2021 21:18, David Blaikie wrote:<br>
> Sounds like something's going wrong for sure. How are you measuring<br>
> the time? (how much time is it taking) and what are you testing by<br>
> "partial recompilation"? Touching an ADT .h file is likely to<br>
> recompile nearly everything so might not be much better than a clean<br>
> build - but touching a .cpp file (especially a .cpp file for a single<br>
> tool, rather than a library) might be quite quick. So try timing a<br>
> full clean build (ninja -t clean, ninja clang) and then incrementally<br>
> touching just a .cpp file (eg: clang/tools/driver/driver.cpp  ) and<br>
> see how they compare<br>
<br>
I currently do not have sufficient resources to compile LLVM on my<br>
personal machine, so I am (ab?)using GitHub Actions. My workflow is<br>
setup such that the build artifacts are cached and restored on every<br>
worflow run. The time is measured automatically by GitHub itself, and is<br>
around ~2h for each run, whether from scratch or starting from the cache.<br></blockquote><div><br></div><div>For doing incremental compilation in such a context, I'd try to enable some sort of CCACHE instead, we have this on a bot and it's quite effective in this context!</div><div><br></div><div>It's not using GitHub actions thought, but here is a recipe for GitHub actions (I haven't tried it): <a href="https://cristianadam.eu/20200113/speeding-up-c-plus-plus-github-actions-using-ccache/">https://cristianadam.eu/20200113/speeding-up-c-plus-plus-github-actions-using-ccache/</a></div><div><br></div><div>Best,</div><div><br></div><div>-- </div><div>Mehdi</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<br>
I don't generally edit .h files directly, unless they are generated by<br>
modifying TableGen files.<br>
<br>
The fact that someone else has successfully been able to do incremental<br>
builds _does_ make it seem like it's a configuration issue on my part.<br>
<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div></div></div>