Cloud XR Streaming: Virtualization Enhancing Resource Utilization and System Flexibility
GPU Virtualization
- Passthrough Mode: This mode directly assigns a physical GPU to a virtual machine, with almost no performance loss and no need to modify hardware drivers. It is widely used by many public cloud service providers. GPUs supporting passthrough can fully utilize their performance without quantity limitations and without affecting GPU functionality.
GPU Slicing Virtualization: This method divides GPU resources from two perspectives: time slices and memory slices. Time slices, similar to CPU process scheduling, share a physical GPU’s computing resources among multiple vGPUs, with each time slice typically between 1-10ms. Memory slices allocate GPU memory to each vGPU, such as dividing a 16GB GPU into 16 vGPUs, each with 1GB of memory. Although there is a slight performance loss, this method offers greater flexibility and supports hot migration.
GPU SRIOV Virtualization: SRIOV (Single Root I/O Virtualization) technology splits a PCI resource (PF) into multiple small devices (VF) that comply with PCI specifications. This method has lower flexibility, usually determined by hardware how many vGPUs a physical GPU can be split into, and cannot be further expanded.
Graphics API Virtualization
Virtualization at the graphics API layer, such as OpenGL and DirectX virtualization.
Operating System Virtualization
Technologies like KVM, VMware, vSphere, and VMware Workstation.
Multi-Process Virtualization
This virtualization achieves process-level isolation within a single operating system, allowing multiple rendering processes to run simultaneously on one server, improving CPU and GPU resource utilization
Advantages of Virtualization Technology
- Resource Utilization Improvement: Virtualizing physical resources into multiple logical resources improves overall resource utilization.
- Flexibility Enhancement: Achieves resource isolation, sharing, and dynamic allocation, enhancing system flexibility and scalability.
- Security Improvement: Prevents resource conflicts and potential security vulnerabilities through resource isolation and security control.
- Reliability Enhancement: Improves system reliability and fault tolerance through resource redundancy and backup.