]> git.baikalelectronics.ru Git - kernel.git/commit
drm/radeon/kms: optimize CS state checking for r100->r500
authorMarek Olšák <maraeo@gmail.com>
Sat, 12 Feb 2011 18:21:35 +0000 (19:21 +0100)
committerDave Airlie <airlied@redhat.com>
Sun, 13 Feb 2011 23:23:27 +0000 (09:23 +1000)
commitb0332380eda1a77a38cfbd2a9ab3d49409497b2b
tree7241f131fe800f67b49b0d66241609b3e171270d
parent15c6159207eee7c72ca860ed57993931c315086c
drm/radeon/kms: optimize CS state checking for r100->r500

The colorbuffer, zbuffer, and texture states are checked only once when
they get changed. This improves performance in the apps which emit
lots of draw packets and few state changes.

This drops performance in glxgears by a 1% or so, but glxgears is not
a benchmark we care about.
The time spent in the kernel when running Torcs dropped from 33% to 23%
and the frame rate is higher, which is a good thing.

r600 might need something like this as well.

Signed-off-by: Marek Olšák <maraeo@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/r100.c
drivers/gpu/drm/radeon/r100_track.h
drivers/gpu/drm/radeon/r200.c
drivers/gpu/drm/radeon/r300.c