Skip to content

panfrost: Fix major flaw in BO cache

Alyssa Rosenzweig requested to merge alyssa/mesa:ooc into main

BOs in the cache are chronological, so we try oldest BOs first. That means if we find the oldest BO is busy, likely every BO is busy, and we should bail early. This dramatically reduces the useless cycles spent in bo_wait.

I studied the BO cache of the following drivers, all of which handle this correctly: iris, lima, etnaviv, freedreno, vc4, v3d, v3dv.


I believe this fixes the performance regression otherwise occuring with !10775 (closed)

Merge request reports