Summary: | _drm_intel_gem_bo_references() function takes half the CPU with Witcher2 game | ||
---|---|---|---|
Product: | Mesa | Reporter: | Eero Tamminen <eero.t.tamminen> |
Component: | Drivers/DRI/i965 | Assignee: | Kenneth Graunke <kenneth> |
Status: | VERIFIED FIXED | QA Contact: | Intel 3D Bugs Mailing List <intel-3d-bugs> |
Severity: | normal | ||
Priority: | medium | CC: | currojerez, idr |
Version: | git | Keywords: | have-backtrace |
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
hack/test for alternate drm_intel_gem_bo_references() semantics
Only emit flush the batch once after a pending query |
Description
Eero Tamminen
2014-12-03 11:30:00 UTC
Created attachment 110405 [details] [review] Only emit flush the batch once after a pending query Changing product to one that we have visibility over. Thanks, I tested the patch and it seems to work fine. Game CPU utilization dropped nearly to half from >100%. The load is now spread more evenly between cores, earlier one core was (almost) fully loaded. On my test machine, speed remains about the same, so no regressions. FPS seems to fluctuate a bit more (~3%), I'm not sure why, but I don't think that a problem. Reassign to Ken because he has patches on mesa-dev for the bug. :) Committed to master. Verified. CPU utilization is lower, now CPU freq can also sometimes dip lower (on the core on which witcher is running). FPS is same, it just fluctuates a bit more due to CPU freq changes. CPU utilization is now mostly due to there just being a lot of system calls (vdso usage below is just for clock_gettime()), not because of libdrm relocations: 36,70% 76240 [kernel.kallsyms] 15,13% 25936 [vdso] 13,69% 32532 perf-20837.map 11,94% 20298 i965_dri.so 8,54% 15647 the 4,71% 8515 libpthread-2.19.so 4,30% 7280 libdrm_intel.so.1.0.0 1,82% 3456 libc-2.19.so 1,10% 1857 libglapi.so.0.0.0 0,77% 1304 libdrm.so.2.4.0 |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.