On 18/09/12 15:34, Justin Lebar wrote:
I'm looking at ways to improve compile speed, and one obvious option is to
cache compile failures. I'm thinking of certain non-called-for-link autoconf
tests, in particular.

Doesn't autoconf have a cache of its own?

Yes, but only for repeated config tests, and for incremental configures; it doesn't help you for clean rebuilds. You can take a copy of the cache, and reload it in your rebuild, but that prevents it actually checking if the result would change, which ccache would do.

Anyway, ccache makes running the compiler faster.  In the cause of
giving the compiler a small program to compile to test a feature,
surely running the compiler takes virtually zero time, and the
overhead is elsewhere.

OK, what I haven't said is that in the system I'm working with a cache miss is quite expensive. I'm using something like distcc (but not distcc), for a somewhat unusual setup we have.

As a proportion, a cache miss on a small compile task is more expensive than a large compile task. If you watch a build log scroll by you can actually see it pause when it gets a cache miss. It doesn't help that even in a parallel make the configure script tends to be serial. This is why I'm trying to mop up all the small jobs.

Andrew
_______________________________________________
ccache mailing list
[email protected]
https://lists.samba.org/mailman/listinfo/ccache

Reply via email to