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

Reply via email to