[virglrenderer-devel] openarena workaround

Dave Airlie airlied at gmail.com
Wed Jun 29 07:00:34 UTC 2016


Hey Rob (and list),

I finally found some time to look at the OA performance under PTS, and
tracked it down to the demo level PTS uses having some flares in it
and the OA flare code doing 8 individual 1x1 readpixels on the depth
buffer. This is clearly not a great idea, and with virgl is an extra
bad idea.

I've created a mesa branch:
https://cgit.freedesktop.org/~airlied/mesa/log/?h=virgl-readpixels-sync

That attempts to fix this, the branch does better tracking of resource
reading/writing, and then when it sees a transfer for a 2D resource
that is out of sync with the host copy, it does a complete surface
sync and then doesn't readback from the host for any subsequent
transfers until the surface is dirtied again.

I haven't ran this through a complete piglit run and I'm not sure it
won't destroy some other apps speed, but it would be good if anyone
has time to give it a spin with some other apps/games.

Dave.


More information about the virglrenderer-devel mailing list