[Libva] High CPU usage in __i915_wait_request when encoding video

Steinar H. Gunderson sgunderson at bigfoot.com
Mon Nov 2 01:28:53 PST 2015


On Mon, Nov 02, 2015 at 02:58:25AM +0000, Xiang, Haihao wrote:
> Are you sure all __i915_wait_request() comes from vaSyncSurface() ? 

Not all, but about 87% of them.

> vaSyncSurface() just calls drm_intel_bo_wait_rendering() to make sure
> all GPU operations with the surface are finished.
> drm_intel_bo_wait_rendering() is implemented with SET_DOMAIN ioctl(), I
> don't think it waits with busylooping.

Then why does it show up in perf?

> BTW is HW semaphore enabled on your system ? You can
> check /sys/kernel/debug/dri/0/i915_semaphore_status for the status.

I don't know what this means:

klump:~> sudo cat /sys/kernel/debug/dri/0/i915_semaphore_status
  Last signal:0x00000000
0x020a8d5f
0x020a8d5f
0x020a8d5f
0x0207cbd4
0x00000000
0x0207cbd4
0x0207cbd4
0x020a8d60
0x020a8d60
0x00000000
0x020a8d60
0x00000000
0x00000000
0x00000000
0x00000000


Sync seqno:
  0x0207cbd3   0x020a8c6c   0x00000000   0x00000000 
  0x00000000   0x00000000   0x00000000   0x0207cbd1 
  0x00000000   0x00000000   0x020a8c6d   0x00000000 
  0x00000000   0x00000000   0x00000000   0x00000000 

/* Steinar */
-- 
Homepage: http://www.sesse.net/


More information about the Libva mailing list