[PATCH] drm/i915/gvt: implement per-vm mmio switching optimization

Du, Changbin changbin.du at intel.com
Tue May 2 09:37:25 UTC 2017


On Tue, May 02, 2017 at 01:50:24AM -0700, Dong, Chuanxiao wrote:
> 
> > > > -void intel_gvt_load_render_mmio(struct intel_vgpu *vgpu, int
> > > > ring_id)
> > > > +static void switch_mmio_to_vgpu(struct intel_vgpu *vgpu, int
> > > > +ring_id)
> > >
> > > As it is per-vm switching, is it really OK to only save/restore the mmio
> > according to the specific ring instead of all the rings? As after switch to VGPU,
> > other rings may also be used by VGPU.
> > >
> > Seems this aways is our defaut policy so far. We only switch the ring which
> > will be used, why switch other rings?
> 
> The current switch policy is per request. If this request will use RCS, only RCS is save/restore as other rings won't be touched. After switch to per-vm, a VM is possible that send a batch of requests to i915, and these requests may use different rings. So my understanding is after switch to per-vm, only save/restore for one ring is not enough.
>
No, you missundstand this 'per-vm'. We still switch mmio per request. What
you think is not feasible if we must rely i915's scheduler.


> Thanks
> Chuanxiao 
> 
> > 
> > 

-- 
Thanks,
Changbin Du
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/intel-gvt-dev/attachments/20170502/00ca8d23/attachment.sig>


More information about the intel-gvt-dev mailing list