Font Size: a A A

Using The Differential Updating Technology For The Performance Optimization Of GPU Virtualization

Posted on:2019-06-17Degree:MasterType:Thesis
Country:ChinaCandidate:W N LiFull Text:PDF
GTID:2428330590992427Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Graphics Processing Unit(GPU)can support Graphics User Interfaces(GUIs),2D,3D and multimedia processing acceleration well,which can save CPU resource and improve user experience obviously.The companies which give computing and service in the cloud are moving forward to support GPU hardware acceleration in their products.The GPU virtualization from Intel based on x86 platform uses “mediated pass-through” as one Graphics Virtualization Technology achieves both good performance,scalability,and also secure isolation among virtual machines(VMs).It shares GPU hardware between VMs while the GPU scheduler guarantees every VM a quantum for direct GPU execution.Since there are many differences like the device driver or system configuration between different virtual GPU(vGPU),so the GPU scheduler need to do hardware context switch between vGPU switch.Meanwhile,in order to give a quick response to user events in every VMs,the reschedule interval is very short usually 1ms.In this case with high scheduling frequency,the latency of one time reschedule will have a big impact on the performance.The main latency of rescheduling comes from hardware context switch,and the main latency of hardware context switch comes from MMIO access.The impact from MMIO access latency for performance will become more and more influential with the increasing of MMIO counts and reschedule frequency.After doing some research about virtual GPU hardware context switch,this paper introduces one smart method which using the differential updating technology for register save and restore in vGPU switching.It can reduce the MMIO access times significantly.Since there are many same hardware settings between 2 virtual GPU,the GPU scheduler can do a comparison with the register value before and after the switch,then just update the registers with different values.In order to do this,use virtual Reg(vReg)to save one copy of registers for peer vGPU to identify the status information of vGPU.If the vGPU is the current one,keep the values synchronization with hardware setting,if not,save the values into vReg.When the vGPU switch happens,no need to read and save the current hardware registers and just need to update the registers which have the difference.In most realistic scenarios,most of vGPUs have similar registers settings,this technology can reduce the latency of vGPU switching significantly,and improve the system performance,and also save CPU resource.
Keywords/Search Tags:Graphics Virtualization Technology, differential updating, vGPU scheduling, performance tuning
PDF Full Text Request
Related items