So, I've been writing a sanity checker for the radeon dma stream.  All going 
nicely & found one stupid bug already.

One thing it does is keep track of values emitted to each register to see 
if/when they actually change (as opposed to just emitting the old one again on 
top of itself).

I've had my doubts about the way we do state for a while, and I wanted to see 
how many of the changes we emit are *real*...  I know we emit some state 
redundantly at the start of each buffer, so if there are no state changes, 
there will be some 'header' of pointless state changes, like in these viewperf 
runs:

Bufs 10 Total emitted 1860 real changes 0 (0.00%)
Total emitted per buf: 186.00
Real changes per buf: 0.00
Bufs 5 Total emitted 1538 real changes 28 (1.82%)
Total emitted per buf: 307.60
Real changes per buf: 5.60
Bufs 7 Total emitted 1794 real changes 0 (0.00%)
Total emitted per buf: 256.29
Real changes per buf: 0.00
Bufs 10 Total emitted 2472 real changes 0 (0.00%)
Total emitted per buf: 247.20
Real changes per buf: 0.00
Bufs 10 Total emitted 1540 real changes 0 (0.00%)
Total emitted per buf: 154.00
Real changes per buf: 0.00

I haven't proven whether these are all restore-context changes, or if some 
additional bogus statechanges are emitted later on.  Either way, it's easy to 
see room for improvement...

For quake3, the situation is different:

Bufs 3 Total emitted 2701 real changes 755 (27.95%)
Total emitted per buf: 900.33
Real changes per buf: 251.67
Bufs 2 Total emitted 2329 real changes 941 (40.40%)
Total emitted per buf: 1164.50
Real changes per buf: 470.50
Bufs 4 Total emitted 3287 real changes 1153 (35.08%)
Total emitted per buf: 821.75
Real changes per buf: 288.25
Bufs 4 Total emitted 3414 real changes 1192 (34.92%)
Total emitted per buf: 853.50
Real changes per buf: 298.00

But we can probably get a 60% reduction (or maybe better) on emitted state...

Keith


_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to