https://bugs.freedesktop.org/show_bug.cgi?id=43000 --- Comment #3 from Ian Romanick <idr@xxxxxxxxxxxxxxx> 2011-11-16 14:25:23 PST --- If this was a recent change, I'll guess that it will bisect to my changes to the way uniforms are handled. I pushed a patch today that may restore previous performance: commit 010dc29283cfc7791a29ba8a0570d8f7f9edef05 Author: Ian Romanick <ian.d.romanick@xxxxxxxxx> Date: Thu Nov 10 12:32:35 2011 -0800 mesa: Only update sampler uniforms that are used by the shader stage Previously a vertex shader that used no samplers would get updated (by calling the driver's ProgramStringNotify) when a sampler in the fragment shader was updated. This was discovered while investigating some spurious code generation for shaders in Cogs. The behavior in Cogs is especially pessimal because it ping-pongs sampler uniform settings: glUniform1i(sampler1, 0); glUniform1i(sampler2, 1); draw(); glUniform1i(sampler1, 1); glUniform1i(sampler2, 0); draw(); glUniform1i(sampler1, 0); glUniform1i(sampler2, 1); draw(); // etc. ProgramStringNotify is still too big of a hammer. Applications like Cogs will still defeat the shader cache. A lighter-weight mechanism that can work with the shader cache is needed. However, this patch at least restores the previous behavior. Signed-off-by: Ian Romanick <ian.d.romanick@xxxxxxxxx> Reviewed-by: Kenneth Graunke <kenneth@xxxxxxxxxxxxx> -- Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel