winsys/amdgpu: enlarge buffer_indices_hashlist
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Tue, 8 Mar 2016 15:01:47 +0000 (16:01 +0100)
committerMarek Olšák <marek.olsak@amd.com>
Tue, 8 Mar 2016 23:52:07 +0000 (00:52 +0100)
commit6373845d985d65c00f7c62b793e67ae5106eabff
tree4e298b6885f7d963d6389af1c3b662d52beadee0
parent32e848b01627e0935f10fbf30b0a0f292c758d30
winsys/amdgpu: enlarge buffer_indices_hashlist

Enlarge the buffer hashlist to prevent large numbers of misses
due to adding more buffers than can be cached in the hashlist.

The game I tested had CS's with up to 1500 buffers and the overhead
of amdgpu_lookup_buffer for various sizes was:

4096 1.97% (new value)
2048 4.37%
1024 6.92%
512  9.47% (old value)

(percentage of CPU usage in render thread as determined by perf)

The time spent in amdgpu_add_buffer self is ~4.2% in all cases and
for 4096 the time needed to clear the hashlist is still < 0.10%,
so I am not expecting significant regressions.

Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Signed-off-by: Marek Olšák <marek.olsak@amd.com>
src/gallium/winsys/amdgpu/drm/amdgpu_cs.h