Zhengjie (PARC)
2017-Feb-25 03:39 UTC
[Nouveau] A request for Virtual GPU based on Nouveau
Hi, I’m a developer from Huawei Technologies Co.,Ltd. China. I’m working on GPU Virtualization. I found some academic papers on google which describe how to virtualize GPU on Cloud based on Nouveau, Such as < TimeGraph: GPU Scheduling for Real-Time Multi-Tasking Environments > <Gdev: First-Class GPU Resource Management in the Operating System> written by Ph.D Shinpei Kato. I know the nouveau project aims to build high-quality, free/libre software drivers for nVidia cards<https://nouveau.freedesktop.org/wiki/CodeNames/>. Maybe the nouveau project developers can do something to help GPU Virtualization. So I’d like to ask whether there is the possibility of cooperation on GPU Virtualization between Huawei and the nouveau project. Maybe there is another way for cooperation. But I don’t know how. Or you can give some advices to us on GPU Virtualization based on nouveau. That will be grateful. I’m looking forward to you reply. Best Jay -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20170225/f065bafa/attachment-0001.html>
Hi Jay, On 25/02/17 14:39, Zhengjie (PARC) wrote:> > I know the nouveau project aims to build high-quality, free/libre > software drivers for nVidia cards > <https://nouveau.freedesktop.org/wiki/CodeNames/>. Maybe > the nouveau project developers can do something to help GPU > Virtualization. So I’d like to ask whether there is the possibility of > cooperation on GPU Virtualization between Huawei and the nouveau project. > > Maybe there is another way for cooperation. But I don’t know how. Or > you can give some advices to us on GPU Virtualization based on > nouveau. That will be grateful. I’m looking forward to you reply. >I'm no kernel dev, but it's worth mentioning a lot of infrastructure for GPU virtualisation was merged in 4.10; specifically the GVT functionality written by Intel which makes use of the VFIO mediated device framework which itself landed in 4.9, I believe (I could be mistaken). It may be worth while asking on the intel-gvt-dev list [1] too, as we would surely all benefit from having standard interfaces for virtual GPUs regardless of hardware vendor. You may wish to have a look at the following files & directories in the kernel source tree: Documentation/vfio-mediated-device.txt drivers/vfio/mdev/ drivers/gpu/drm/i915/gvt/ None of this is specifically related to nouveau, but there's certainly some common infrastructure (mdev) that could be utilised. [1] https://lists.freedesktop.org/mailman/listinfo/intel-gvt-dev Cheers, Jack -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 833 bytes Desc: OpenPGP digital signature URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20170306/2031d6cb/attachment-0001.sig>
On 25/02/17 05:39, Zhengjie (PARC) wrote:> Hi, > > I’m a developer from Huawei Technologies Co.,Ltd. China. I’m working on > GPU Virtualization. > > I found some academic papers on google which describe how to virtualize > GPU on Cloud based on Nouveau, Such as < TimeGraph: GPU Scheduling for > Real-Time Multi-Tasking Environments > <Gdev: First-Class GPU Resource > Management in the Operating System> written by Ph.D Shinpei Kato. > > I know the nouveau project aims to build high-quality, free/libre > software drivers for nVidia cards > <https://nouveau.freedesktop.org/wiki/CodeNames/>. Maybe > the nouveau project developers can do something to help GPU > Virtualization. So I’d like to ask whether there is the possibility of > cooperation on GPU Virtualization between Huawei and the nouveau project. > > Maybe there is another way for cooperation. But I don’t know how. Or you > can give some advices to us on GPU Virtualization based on nouveau. That > will be grateful. I’m looking forward to you reply. >Nouveau's design is meant for allowing virtualization, so you should not have too much trouble getting something to work, provided you can make hypercalls. Check out NVIF in the nouveau's source. Martin