Re: Handling transient data

2008-03-04 Thread Eric Anholt
On Tue, 2008-03-04 at 19:27 +0100, Thomas Hellström wrote: > Keith Packard wrote: > > On Tue, 2008-03-04 at 17:34 +0100, Thomas Hellström wrote: > > > >> > >> Hmm, Yes this is a tricky case. Doesn't Intel's coherent GART, > >> DRM_BO_FLAG_CACHED, work here? I suspect it'd be a bit slow thou

Re: Handling transient data

2008-03-04 Thread Thomas Hellström
Keith Packard wrote: > On Tue, 2008-03-04 at 17:34 +0100, Thomas Hellström wrote: > >> >> Hmm, Yes this is a tricky case. Doesn't Intel's coherent GART, >> DRM_BO_FLAG_CACHED, work here? I suspect it'd be a bit slow though. >> > > No, the restrictions on coherent mappings make this mode

Re: Handling transient data

2008-03-04 Thread Keith Packard
On Tue, 2008-03-04 at 17:34 +0100, Thomas Hellström wrote: > > Hmm, Yes this is a tricky case. Doesn't Intel's coherent GART, > DRM_BO_FLAG_CACHED, work here? I suspect it'd be a bit slow though. No, the restrictions on coherent mappings make this mode effectively useless. So, pixmaps need to

Re: Handling transient data

2008-03-04 Thread Thomas Hellström
Dave Airlie wrote: > apologies for top posting, but Thomas's email appears to be breaking > alpine (html or something encoding) > > The big area where we win with CACHED_MAPPED is pixmaps for 2D operations. > > a) we can't know in advance if we should allocate pixmaps as cached or > uncached.

Re: Handling transient data

2008-03-04 Thread Dave Airlie
apologies for top posting, but Thomas's email appears to be breaking alpine (html or something encoding) The big area where we win with CACHED_MAPPED is pixmaps for 2D operations. a) we can't know in advance if we should allocate pixmaps as cached or uncached. b) we can't know if we are going

Re: Handling transient data

2008-03-04 Thread Thomas Hellström
Keith Packard wrote: > On Mon, 2008-03-03 at 19:34 +0100, Thomas Hellström wrote: > > > >> 2) Copying buffers in drm. This is to avoid vma creation and pagefaults, >> right? Yes, that could be an improvement *if* kmap_atomic is used to >> provide the kernel mapping. Doing vmap on a whole bu

Re: Handling transient data

2008-03-04 Thread Thomas Hellström
Jesse Barnes wrote: > On Monday, March 03, 2008 10:34 am Thomas Hellström wrote: > >> 1) Allocating all pages at once: >> Yes, I think this might improve performance in some cases. The reason >> it hasn't been done already is the added complexity needed to keep track >> of the different alloca

Re: Handling transient data

2008-03-03 Thread Keith Packard
On Mon, 2008-03-03 at 19:34 +0100, Thomas Hellström wrote: > 1) Allocating all pages at once: > Yes, I think this might improve performance in some cases. The reason > it hasn't been done already is the added complexity needed to keep track > of the different allocation sizes. One optimizatio

Re: Handling transient data

2008-03-03 Thread Jesse Barnes
On Monday, March 03, 2008 10:34 am Thomas Hellström wrote: > 1) Allocating all pages at once: > Yes, I think this might improve performance in some cases. The reason > it hasn't been done already is the added complexity needed to keep track > of the different allocation sizes. One optimization th

Re: Handling transient data

2008-03-03 Thread Thomas Hellström
Keith Packard wrote: > While buffer objects provide a huge benefit for long-term objects, their > benefit for transient data is less clear. Page allocation, cache > flushing and mmap costs are all significant. This missive is designed to > outline some of the potential mechanisms to ameliorate or t

Handling transient data

2008-03-01 Thread Keith Packard
While buffer objects provide a huge benefit for long-term objects, their benefit for transient data is less clear. Page allocation, cache flushing and mmap costs are all significant. This missive is designed to outline some of the potential mechanisms to ameliorate or transfer these costs to other