CCAP: A Cache Contention-Aware Virtual Machine Placement Approach for HPC Cloud
Applications in High Performance Computing (HPC) cloud are characterized by large cache resource consumption due to large-scale inputs and intensive communications, which creates serious Shared Last Level cache (SLLC) performance bottleneck. Current system software stacks are not efficient in addressing this issue among virtual machines at the hypervisor level or the threads at the operating system level. In this paper, we investigate performance interference due to contention for SLLC in the HPC cloud. We employ an enhanced reuse distance analysis technique with an accelerated cyclic compression algorithm to identify applications cache interference intensity. Based on reuse distance analysis, we propose a practical Cache Contention-Aware virtual machine Placement approach (CCAP). CCAP dispatches virtual machines according to their cache interference intensities to avoid cache pollution and interference, thus alleviating negative effects of cache contention. We implement CCAP in the Xen hypervisor. Evaluation of NPB workload reveals that CCAP can improve performance of cache sensitive applications when they are co-scheduled with cache pollution programs. For a 2-workload system, it reduces execution time by 12%, as well as cache miss rate by 13%, while increasing throughput by 13%, on average. Moreover, CCAP also improves the average performance of the cache pollution programs by 5%. For a 4-workload system, CCAP brings more significant performance improvement to cache sensitive applications, an average increase of 20%.
cache contention virtual machine placement hpc cloud reuse distance