NUMA architecture has become the dominant architecture in high-performance servers for its high memory band-witdh and good scalability.NUMA-based servers are widely used in cloud computing data centers.However,the topology of vCPUs and memories should be carefully managed in NUMA-based virtualization systems.Because the arbitrary vCPU-memory topology may cause uncessacy remote memory accesses and shared resource contention,which may significantly decrease the system performance.Though severial researchers have discussed about the problems in virtualization systems on NUMA architecture.There still exist great challenges to minimize the performance penalty caused by NUMA factors.This enlighten us to design a semantic gap bridging method to migrate vCPUs according to the process running on the vCPU.In this paper,we take method to identify the GuestOS processes running in virtual machime vCPUs,and collect the PMU information of GuestOS processes from hardware processors to identify the NUMA memory accessing characterictics of these processes.Then we design data struct and algorithms to cache the memory accessing information of the hot GuestOS processes.Finally,we design a NUMA-aware vCPU scheduler to dynamicly migrate the vCPUs to their local node according to the GuestOS process running in the vCPU.We implement the strategy based on Xen-4.5.1 VMM.And compared the strategy with Xen's default Credit scheduler.Experimental results show that our strategy can achive from 5% to 10% performance improvements for memory-intensive workloads.However,the overheads introduced by the strategy are negligible。... |