Paper Note of gScale

Title: gScale: Scaling up GPU Virtualization with Dynamic Sharing of Graphics Memory Space

Topic: a state of art solution about improve the scaling ability of GPU Virtualization

Idea: analyze the bottleneck of gVirt that fixed size resource partition limits the vGPU instances, based on gVirt, come up with the idea that give each vGPU a private shadow graphics translation table (GTT) to share the high physical graphic memory and synchronize only when the instance is rendering and use on-demand copy to reduce cost, share the low graphic memory by using Extended Page Table (EPT) to establish a mapping relation from guest physical address and host physical address then link those directly so that CPU can access the host memory without using global graphic memory, use a part of low graphic memory and apply dynamic management to serve fence register, divide the high graphic memory to slots which can be shared by vGPU and avoid context switch for idle vGPU to handle many vGPU.

Contribution: an open-source GPU Virtualization solution that can reach the state of the art standar

Intellectual merit: a private shadow GTT to share high graphic memory, a mechanism named ladder mapping to share low graphic memory, use fence memory space pool to solve the invalid fence register problem caused by ladder mapping, and use slot sharing to reduce cost when launched many vGPU

Strengths: clear logic that analyze the bottleneck of gVirt and give improve ideas step by step

Weakness: not so clearly illustrate the ladder mapping idea via example

Show comments from Gitment