Hi, here is a new version of the series. I'm calling it v3 even though I never sent v2 because it contains v3 of the main patch. Changes relative to v1:
- disable cache on USAGE_TEXTURE_BUFFER and bool/GLboolean nit - disable cache only temporarily when a persistent writable mapping exists - add a MESA_NO_MINMAX_CACHE environment variable that disables caches completely - track hits and misses and disable the cache on a per-BO basis if the hit rate is low The last point is on a per-BO basis because applications don't always have the same usage pattern for all BOs. There is also a new util/hash_table patch which I added for an idea that I ultimately rejected, but it turns out to be useful elsewhere, so I'm sending it along while I'm at it. I benchmarked this series with a couple of tests from PTS, using low resolutions in an attempt to emphasize CPU usage. Their performance is unaffected, with averages with/without this series within the measurement tolerance of each other. That there's no regression is good news, and that there's no improvement is to be expected - if one of these tests had been affected by the problem this series addresses, someone else would probably have done it much earlier ;) Please review! Thanks, Nicolai -- docs/envvars.html | 1 + src/mesa/Makefile.sources | 1 + src/mesa/main/bufferobj.c | 59 +++- src/mesa/main/hash.c | 4 +- src/mesa/main/mtypes.h | 9 + src/mesa/main/transformfeedback.h | 3 + src/mesa/vbo/vbo.h | 3 + src/mesa/vbo/vbo_exec_array.c | 148 ---------- src/mesa/vbo/vbo_minmax_index.c | 378 ++++++++++++++++++++++++ src/util/hash_table.c | 25 ++ src/util/hash_table.h | 7 + src/util/tests/hash_table/Makefile.am | 1 + src/util/tests/hash_table/clear.c | 91 ++++++ 13 files changed, 570 insertions(+), 160 deletions(-) _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
