[PATCH] drm/radeon: fence virtual address and free it once idle v3

Michel Dänzer michel at daenzer.net
Wed Aug 8 06:54:27 PDT 2012


On Mon, 2012-08-06 at 18:55 +0200, Christian König wrote: 
> On 06.08.2012 18:30, Jerome Glisse wrote:
> > On Mon, Aug 6, 2012 at 12:06 PM, Christian König
> > <deathsimple at vodafone.de> wrote:
> >> [SNIP]
> >> Additional to that patch we still need a minor fix to mesa (just move
> >> freeing the VM range after closing the handle). Going to send that in the
> >> next minute to the mesa-dev list.
> >>
> >> Otherwise the patch indeed fixes the problem, but also isn't the best idea
> >> for performance.
> >>
> > This does not impact performance, it's all about destroying bo/va so
> > it's not a performance path. Or am i missing something here ?
> 
> radeonsi currently allocates very small BOs (8-32 bytes) for T# 
> descriptors, and throws them away immediately after drawing.
> 
> That alone of course is insane under a performance aspect, but waiting 
> for the last job to finish makes things completely worse.

Absolutely, but I think blocking on BO destruction really is the
fundamental problem. To fix this, an alternative to your patch might be
the fenced buffer manager in src/gallium/auxiliary/pipebuffer/.


-- 
Earthling Michel Dänzer           |                   http://www.amd.com
Libre software enthusiast         |          Debian, X and DRI developer


More information about the dri-devel mailing list