Comment # 16
on bug 97872
from haihao
(In reply to Sean V Kelley from comment #13)
> Haihao,
>
> The 2nd VDBOX on SKL is not a complete VDBOX, it only contains MFX. I would
> recommend shunting all MFX workloads to the 2nd VDBOX and using the 1st
> VDBOX for HCP, VDENC, HuC.
Usually user doesn't use different codecs at the same time. I don't think using
BSD1 only for MFX is better choice for VP8/H264/MPEG2 etc.
You can’t assume that. In fact, VDENC will likely dominate.
> What we need for a permanent fix is an i915
> kernel patch that manages the loads between the engines based on input from
> UMD.
Currently i915 kernel can manage the loads between the engines. But i915
kernel doesn't know HCP/HuC commands must be ran from the 2nd ring unless UMD
driver can tell the kernel. which is why I915_EXEC_BSD_RING1 and
I915_EXEC_BSD_RING2 are added to the execution ioctl.
Yes, that is the whole point of the patch submitted to the i915, but it is still a hack. I’m well aware of how this works. And that means every time we use a new codec that is not balanced between the VDBoxen we add the hack flag. Again, we need to do better.