OpenCL* for CPU
Ask questions and share information on Intel® SDK for OpenCL™ Applications and OpenCL™ implementations for Intel® CPU
Announcements
This forum covers OpenCL* for CPU only. OpenCL* for GPU questions can be asked in the GPU Compute Software forum. Intel® FPGA SDK for OpenCL™ questions can be ask in the FPGA Intel® High Level Design forum.

Intel GPUs in the Cloud

Sean_S_3
Beginner
245 Views

Can the Intel GPU cores be provisioned with any cloud solutions, e.g., OpenStack, just like Intel CPU cores and run OpenCL applications?  Any documentation to detail the cans and cannots?

0 Kudos
3 Replies
Robert_I_Intel
Employee
245 Views

Hi Sean,

Typically, cloud service providers use Xeons, which traditionally didn't have integrated processor graphics. Only recently Intel released Xeons with Integrated graphics (see http://ark.intel.com/products/88043/Intel-Xeon-Processor-E3-1285L-v4-6M-Cache-3_40-GHz ). Those processors should be equipped with XenGT: a graphics virtualization technology (see https://01.org/sites/default/files/documentation/sz14_sfts008_100_engp.pdf and https://01.org/igvt-g ), which enables them to run OpenCL 1.2 on virtualized graphics device . So now folks in OpenStack can create a GPU provisioning on top, but I am not aware of anyone doing this just yet. I will ask internally to see if I can get you more details.

Sean_S_3
Beginner
245 Views

Hi Robert,

From one of the links you provided, Intel GVT --d seems pretty straight forward, but I'm not entirely sure about GVT -s and -g.  Do each VM see the entire GPU with GVT -s and -g, or are they compute units in the GPU fissioned into multiple subdevices kind of like CPU compute units are provisioned among VMs.  I image either GVT -s or -g would time multiplex the entire GPU between multiple VMs, and the other would provision dedicated partitions of the GPU compute units among the VMs.  However, the links seem like both GVT -s and -g are just different time multiplexing implementations.  Is that correct that there isn't an implementation that dedicates partitions of the GPU?

Thanks!

Robert_I_Intel
Employee
245 Views

Hi Sean,

I think you are correct in saying that we don't partition the GPU, we just virtualize it.

Here is the explanation from the architect:

With vt-d, gvt-g we will get hardware acceleration and will be able to run OpenCL on the GPU in a vm.

The way the GPU is shared in gvt-g is by time slicing between vms.

Vt-d the entire GPU is passed through to the vm.

 

What’s available now

Open Source Xen – gvt-g & vt-d

Citrix Xen server – vt-d

 

What’s upcoming

Citrix Xen Server – gvt-g

Vmware - vt-d

Reply