[Mesa-dev] mesa: Kill _ReallyEnabled, improve _mesa_update_state() performance.
Eric Anholt
eric at anholt.net
Thu Apr 24 17:50:07 PDT 2014
Here's a series I got built when profiling to see why glamor's FBO cache
is necessary. It turns out the worst spots in the no-cache profile were
present even with the cache, and they were about walking the 96 texture
units we've got these days. Thanks to Chris Forbes's
_MaxEnabledTexImageUnit, I now found a way to cut down how much we walk,
for a big performance win: -6.50518% +/- 2.55601% effect on runtime of the
test (n=22). And, along the way, I got to kill a couple of bitfields that
I've always found confusing, and I bet others have as well.
There's still a similar problem with glDeleteTextures() though -- if i
don't use the FBO cache, then we spend 5% of CPU walking the array then.
Anyone have nice ideas for improving that? I'm thinking of just having a
_MaxBoundTexImageUnit, but maybe there's something better.
More information about the mesa-dev
mailing list