[ccache] Ccache prefetch

Ian Albany albo123 at yandex.com
Sun May 11 00:19:52 MDT 2014


Perhaps that could be something like a ccache "manager" which preloads the VFS cache (sorry forgot the cache bit in the initial email), but the joke here  is that the manager is actually doing work, as opposed to just carrying a fancy title.

Alby

11.05.2014, 16:15, "Ian Albany" <albo123 at yandex.com>:
> Hi
>
> I guest you missed my point. I believe that the discrepancy between "memory" caches and "disk" caches on a typical harvard architecture these days is such that I derive great benefits by reading the later into the former via another thread on the same build machine.
>
> I do derive a measure of improvement, but not as great as I derive from subsequent builds after a reboot than I do after the former. So my point is, I guess, is there any way to ccache to know the locality of hits for a given object and therefore preload those objects which would entail a separate thread of execution.
>
> I know this adds some complexity but in effect, I would say that when I build the kernel, I am usually hitting the cache in a normally pretty predetermined order.
>
> Yes but running everything in tmpfs on a 32GB system everything does fly.
>
> Alby
>
> 11.05.2014, 15:51, "Eitan Adler" <lists at eitanadler.com>:
>
>>  On 10 May 2014 22:11, Ian Albany <albo123 at yandex.com> wrote:
>>>   Hi
>>>
>>>   I have what prima facie appears to be a bit of a silly question about ccache. But first, let me just say that I have been uging ccache for over a decade and I am quite happy overall.
>>>
>>>   However, during many compiltaions I notice that the build time on linux at least varies and I have pinned it down to the fact that most of the blocking withing ccache with my current setup occurs with disk IO.
>>  I can not speak to Linux but have you tried putting the cache on a
>>  tmpfs or mdfs partition?  In addition do you find that existing disk
>>  caching does not help you?
>>
>>  --
>>  Eitan Adler


More information about the ccache mailing list