Bill Crawford wrote:
>
> Gareth Hughes wrote:
>
> > In general, this is true. However:
>
> > 1) All buffers (malloc()'d and DMA) are nicely aligned to at least a
> > cacheline boundary.
>
> malloc() will not always be allocated contiguous physical pages, so
> there is the "colouring" problem ... we might get several pages that
> are competing for cache. The application itself will use memory for
> processing vertex data, etc.; perhaps that's enough to explain the
> difference? It's quite a small percentage difference, but it is
> consistent.
That's what set associativity is for.
> I'm not at all sure of the cause, really, but the behaviour is real
> enough ... I see it myself. Not really important enough to waste any
> more time on, though :)
True on both accounts :-)
> > 2) DMA buffers reside in uncached AGP memory. Hence, caching plays no
> > part in the timing of the app.
>
> Here I'm not an expert, indeed quite the opposite, so no argument.
What I *really* meant was the driver spends a considerable amount of
time writing vertex data out to AGP memory (in many cases it is by far
the dominant activity), and this will reduce the effects of caching.
Anyways...
-- Gareth
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/dri-devel