summaryrefslogtreecommitdiff
path: root/include/linux/bcma/bcma.h
diff options
context:
space:
mode:
authorDave Gordon <david.s.gordon@intel.com>2016-05-20 13:54:07 +0300
committerChris Wilson <chris@chris-wilson.co.uk>2016-05-20 15:43:00 +0300
commit63d15326168d54cfef082f6899c86f8260db4037 (patch)
tree572c3a0e87f9f1b1c4ec0a551d8e5518f2893317 /include/linux/bcma/bcma.h
parent85d1225ec066b2ef46fbd0ed1bae78ae1f3e6c91 (diff)
downloadlinux-63d15326168d54cfef082f6899c86f8260db4037.tar.xz
drm/i915: Inline sg_next() for the optimised SGL iterator
Avoiding the out-of-line call to sg_next() reduces the kernel execution overhead by 10% in some workloads (for example the Unreal Engine 4 demo Atlantis on 2GiB GTTs) which are dominated by the cost of inserting PTEs due to texture thrashing. We can demonstrate this in a microbenchmark that forces us to rebind the object on every execbuf, where we can measure a 25% improvement, in the time required to execute an execbuf requiring a texture to be rebound, for inlining the sg_next() for large texture sizes. Benchmark: igt/benchmarks/gem_exec_fault Benchmark: igt/benchmarks/gem_exec_trace/Atlantis Signed-off-by: Dave Gordon <david.s.gordon@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Link: http://patchwork.freedesktop.org/patch/msgid/1463741647-15666-5-git-send-email-chris@chris-wilson.co.uk
Diffstat (limited to 'include/linux/bcma/bcma.h')
0 files changed, 0 insertions, 0 deletions