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. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev