You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Sanjay Tripathi <sa...@citrix.com> on 2014/02/19 20:16:00 UTC

[Request] gpu/vGPU support for guest VMs feature patch review request

Hi all,

I have been working on the GPU and vGPU support for VMs in CloudStack for quite a few days for which I have also published the functional spec at this location: https://cwiki.apache.org/confluence/display/CLOUDSTACK/GPU+and+vGPU+support+for+CloudStack+Guest+VMs


The feature adds the GPU and vGPU support for guest VMs in CS and deployment of gpu/vGPU enabled VMs are service offering based. Patch for the same can be find here: https://reviews.apache.org/r/17889/

Please review the patch and let me know if any changes needed.

Also there are two dependent patch for this feature patch i.e. https://reviews.apache.org/r/17843/ and https://reviews.apache.org/r/17844/ which have XS 6.2 SP1 released java bindings which also supports vGPU functionality.

Please let me know if you need any further information.

--Sanjay 

-----Original Message-----
From: Marcus [mailto:shadowsor@gmail.com] 
Sent: Friday, February 14, 2014 11:51 AM
To: dev@cloudstack.apache.org
Subject: Re: Exposing PCIe capabilities to the Cloud Scheduler

I'd expect it to be something service-offering based, e.g. if your offering specifies GPU, it auto-allocates from detected GPU elements, if it's 10G nic, it auto allocates from that. Admin would still have to tag the host as being capable, somehow, but it would alleviate the manual registration of every PCI ID for every VF in every agent.properties, for example. One could simply turn on SR-IOV NIC or GPU.

On Thu, Feb 13, 2014 at 6:00 PM, Edison Su <Ed...@citrix.com> wrote:
>
>
>> -----Original Message-----
>> From: Marcus [mailto:shadowsor@gmail.com]
>> Sent: Thursday, February 13, 2014 1:34 PM
>> To: dev@cloudstack.apache.org
>> Cc: ????; malini.k.bhandaru@intel.com; Dugger, Donald D; 
>> yunhong.jiang@intel.com; Meshkin, Omid; Manan Shah; Bob Ball; Hoban, 
>> Adrian
>> Subject: Re: Exposing PCIe capabilities to the Cloud Scheduler
>>
>> I think it's interesting, the PCI discovery that was mentioned, it 
>> would alleviate the manual agent.properties config that the patch 
>> requires.  I
>
> Curious, if libvirt auto discover a bunch of pci devices on the host, should agent report all of them to user/admin? If not, based on what kind of criteria to filter pci devices?
>
>> imagine it will be available in the Ubuntu 14.04 release as well, 
>> assuming they're targeting current versions.
>>
>> On Thu, Feb 13, 2014 at 1:21 PM, Edison Su <Ed...@citrix.com> wrote:
>> > Hi Ryousei,
>> >      The patch sounds good to me, don’t know why it’s not got 
>> > checked into
>> 4.2 or 4.3. Is it ok for you to rebase to master? After that, I’ll 
>> check it into master.
>> >
>> >
>> > From: 高野了成 [mailto:takano-ryousei@aist.go.jp]
>> > Sent: Thursday, February 13, 2014 4:08 AM
>> > To: dev@cloudstack.apache.org
>> > Cc: malini.k.bhandaru@intel.com; Edison Su; Dugger, Donald D; 
>> > yunhong.jiang@intel.com; Meshkin, Omid; Manan Shah; Bob Ball; 
>> > Hoban, Adrian
>> > Subject: RE: Exposing PCIe capabilities to the Cloud Scheduler
>> >
>> > Dear Edison Su and Malini Bhandaru,
>> >
>> > I am the mentor of Pawit, who has submitted PCI passthrough patch 
>> > last
>> year.
>> > We have been developing this feature for operating our private 
>> > cloud based on CloudStack 4.2.1.
>> > Now our users can deploy and migrate a VM instance with an 
>> > InfiniBand
>> interface.
>> >
>> > We hope to improve our patch and merge into CloudStack.
>> > Your comments and suggestions are welcome.
>> >
>> > Best regards,
>> > Ryousei
>> >
>> >> Welcome, my dear Intel friends:)
>> >> Last year, community has contributed code regarding to add PCI
>> passthrough into CloudStack, see the patch:
>> https://reviews.apache.org/r/12098/, but unfortunately, this patch 
>> doesn't get checked in, due to lack of support from committer:
>> http://markmail.org/message/ux2ojhxfqwdvz2uc.
>> >> If you guys want to pick it up, either work from scratch, or based 
>> >> on the
>> original patch, that will be great.
>> >>
>> >>> -----Original Message-----
>> >>> From: Bhandaru, Malini K
>> >>> [mailto:malini.k.bhandaru@intel.com<mailto:malini.k.bhandaru@inte
>> >>> l.c
>> >>> om>]
>> >>> Sent: Wednesday, February 12, 2014 12:48 PM
>> >>> To: dev@cloudstack.apache.org<ma...@cloudstack.apache.org>
>> >>> Cc: Dugger, Donald D; Jiang, Yunhong; Meshkin, Omid; Manan Shah; 
>> >>> Bob Ball; Hoban, Adrian
>> >>> Subject: Exposing PCIe capabilities to the Cloud Scheduler
>> >>>
>> >>> Hello CloudStack-ers!
>> >>>
>> >>> PCIe (Peripheral Component Interconnect Express) devices exist 
>> >>> for graphics processing, storage, digital signal processing, 
>> >>> accelerating encryption/decryption, and more. Further, within a 
>> >>> function class, devices can exhibit different capability levels.
>> >>> Exposing such platform hardware capabilities to the cloud 
>> >>> scheduler allows Virtual Machines (VMs) to explicitly request 
>> >>> them for improved performance and for the cloud vendor the 
>> >>> opportunity to offer services at different price points. 
>> >>> facilitate differentiated revenur
>> opportunities to the cloud vendor.
>> >>>
>> >>> CloudStack already exposes GPU
>> >>>
>> acceleration<https://cwiki.apache.org/confluence/display/CLOUDSTACK/
>> >>> GP
>> >>> U+and+vGPU+support+for+CloudStack+Guest+Vms>. Along these lines
>> >>> PCIe capabilities, including SR-IOV (Single Root IO 
>> >>> virtualization) can be exposed.
>> >>> OpenStack has a set of blueprints for the same. The 
>> >>> implementation spans tracking the PCIe devices associated with a 
>> >>> host, their use, VM association, and requesting PCIe features. 
>> >>> libvirt has been modified to accommodate PCIe discovery. Intel 
>> >>> and Mirantis contributed
>> a lot of the code.
>> >>> https://blueprints.launchpad.net/nova/+spec/epa-for-pcie-devices
>> >>> https://blueprints.launchpad.net/nova/+spec/pci-passthrough-libvi
>> >>> rt
>> >>>
>> >>> Should you have an interest in supporting such functionality and 
>> >>> have technical questions, please get in touch.
>> >>>
>> >>> Regards
>> >>> Malini Bhandaru, Intel
>> >