Artificial Intelligence Computing Leadership from NVIDIA
Does Nvidia vGPU provides spatial sharing of GPU?
Hello Nvidia Experts, I have a question about whether the Nvidia vGPU provides spatial GPU sharing. When reading the vGPU documentation, I can see that Nvidia driver enforces memory isolation for each vGPUs, but is isolation also applied for SMs (streaming multiprocessor)? For example, if vGPU-A uses a kernel that consumes all the available thread blocks of the GPU then vGPU-B have to wait for the vGPU-A to finish?
Hello Nvidia Experts,

I have a question about whether the Nvidia vGPU provides spatial GPU sharing.
When reading the vGPU documentation, I can see that Nvidia driver enforces memory isolation for each vGPUs, but is isolation also applied for SMs (streaming multiprocessor)? For example, if vGPU-A uses a kernel that consumes all the available thread blocks of the GPU then vGPU-B have to wait for the vGPU-A to finish?

#1
Posted 08/18/2019 12:54 AM   
Hi The Framebuffer is dedicated to each VM, but everything else is shared. To help give the best experience / performance there are a few Schedulers that you can select from or modify depending on your use case. You can read about how these work and how to modify them here: [url]https://docs.nvidia.com/grid/latest/grid-vgpu-user-guide/index.html#changing-vgpu-scheduling-policy[/url] Regards MG
Hi

The Framebuffer is dedicated to each VM, but everything else is shared. To help give the best experience / performance there are a few Schedulers that you can select from or modify depending on your use case. You can read about how these work and how to modify them here: https://docs.nvidia.com/grid/latest/grid-vgpu-user-guide/index.html#changing-vgpu-scheduling-policy

Regards

MG

#2
Posted 08/18/2019 08:14 AM   
Thanks for the reply, But my question is does the Nvidia vGPU share the same limitations as the normal scenario? For example, a kernel cannot preempt the other Kernel that occupies all of the GPU resources.
Thanks for the reply,
But my question is does the Nvidia vGPU share the same limitations as the normal scenario?
For example, a kernel cannot preempt the other Kernel that occupies all of the GPU resources.

#3
Posted 08/18/2019 10:41 PM   
Hi If you're asking whether a single VM can consume the entire GPU so that other VMs are negatively impacted when they try and access it, then the answer is yes. A GPU is no different to any other virtualised resource. To prevent this from happening as much as possible, the Scheduler can be configured to allocate different amounts of the GPUs resources between multiple VMs in different ways, as per the link above. Regards MG
Hi

If you're asking whether a single VM can consume the entire GPU so that other VMs are negatively impacted when they try and access it, then the answer is yes. A GPU is no different to any other virtualised resource.

To prevent this from happening as much as possible, the Scheduler can be configured to allocate different amounts of the GPUs resources between multiple VMs in different ways, as per the link above.

Regards

MG

#4
Posted 08/19/2019 09:59 AM   
Scroll To Top

Add Reply