[Mesa-dev] [PATCH] state trackers and state changes propagation
Pierre-Eric Pelloux-Prayer
pelloux at gmail.com
Fri May 20 14:03:08 PDT 2011
Hi,
I've built several patches trying to reduce the propagation of state changes.
They are proof-of-concept, and I'd like to know what you think about
them, mainly :
- do you think it's worth it ? it adds complexity to state trackers,
but it avoids some possibly expensive driver function calls.
- if yes, what would you be the best design approach for this ?
For reference, Airlied built a patch similar to my 4th one, but with a
different approach (adding an incrementing 'Generation' field to
struct instead of comparing pointers) : http://fpaste.org/QTng/
(all tests done using 2.6.38.3/64 bits/r600g)
== Regression ? ==
- piglit quick.tests with all 4 patches applied => no regression
== Some simple benchmarking ==
Successive patches applied :
* 01 : st_atom_constbuf
* 02 : st_atom_rasterizer
* 03 : st_atom_texture
* 04 : st_atom_sampler
mesa-demos: drawoverhead (draws/sec):
* Draw only : 2100t
* Draw w/ nop sc : 2100t
* Draw w/ sc :
|git from 05/18 | +01 | +01->02 | +01->03 | +01->04 |
| 227t | 328t | 328t | 350t | 365t |
openarena (anholt benchmark, 3 runs average) :
|git from 05/18 | +01 | +01->02 | +01->03 | +01->04 |
| 74.6 | 75.0 | 74.4 | 75.7 | 74.7 |
-- Pierre-Eric
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-st-mesa-reduced-constant-buffers-upload.patch
Type: text/x-patch
Size: 6679 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20110520/2ad9bcfb/attachment-0004.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-st-mesa-reduce-cso_set_rasterizer-calls-count.patch
Type: text/x-patch
Size: 12615 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20110520/2ad9bcfb/attachment-0005.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-st-mesa-reduce-cso_set_vertex_sampler_views-cso_set_.patch
Type: text/x-patch
Size: 3563 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20110520/2ad9bcfb/attachment-0006.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-st-mesa-reduce-cso_single_sampler-cso_single_vertex_.patch
Type: text/x-patch
Size: 6962 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20110520/2ad9bcfb/attachment-0007.bin>
More information about the mesa-dev
mailing list