[Mesa-dev] [PATCH 0/8] i965: Don't recycle BOs until they are idle

Michel Dänzer michel at daenzer.net
Thu Jun 14 08:43:11 UTC 2018

On 2018-06-13 10:26 PM, Jason Ekstrand wrote:
> The current BO cache puts BOs back into the recycle bucket the moment the
> refcount hits zero.  If the BO is busy, we just don't re-use it until it
> isn't or we re-use it for a render target which we assume will be used
> first for drawing.  This patch series reworks the way the BO cache works a
> bit so that we don't ever recycle a busy BO.  On the down side, it means
> that we don't get the "keep busy BOs busy" heuristic (which we have no
> proof actually helps).  On the up side, we can now easily use a MRU
> heuristic instead of round-robin for all buffers and not just the busy
> ones.  Will this be an improvement, a regression or a wash?  I don't know
> but I doubt it will have a major effect one way or another.

FWIW, I suspect this could be a significant loss with overlapping copies
in glamor (e.g. x11perf -copywinwin500), because it won't be able to
reuse the busy BOs anymore (glamor creates a temporary FBO for each
overlapping copy).

Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer

More information about the mesa-dev mailing list