r300g: offload the CS ioctl to another thread
authorMarek Olšák <maraeo@gmail.com>
Tue, 15 Feb 2011 04:43:44 +0000 (05:43 +0100)
committerMarek Olšák <maraeo@gmail.com>
Tue, 15 Feb 2011 08:17:39 +0000 (09:17 +0100)
commitb9e2cde6006b557a3a23a82384899f4d5a5ac7b8
treea71d951e991ee3161fa1c2acc15ec58a79056caa
parent8e0437914bb786d0b05be8f95e4ff37bf5a19f44
r300g: offload the CS ioctl to another thread

This is a multi-threading optimization which hides the kernel overhead
behind a thread. It improves performance in CPU-limited apps by 2-15%.
Of course you must have at least 2 cores for it to make any difference.

It can be disabled with:

export RADEON_THREAD=0
src/gallium/drivers/r300/r300_flush.c
src/gallium/drivers/r300/r300_winsys.h
src/gallium/winsys/radeon/drm/radeon_drm_bo.c
src/gallium/winsys/radeon/drm/radeon_drm_bo.h
src/gallium/winsys/radeon/drm/radeon_drm_cs.c
src/gallium/winsys/radeon/drm/radeon_drm_cs.h