GPU acceleration for Kernel Samepage Merging
暂无分享,去创建一个
Kernel Samepage Merging (KSM) is a Linux kernel module for improving memory utilization by searching and merging the redundant memory pages. When working with the hypervisors, such as Kernel-based Virtual Machine, KSM helps share identical memory pages of the hosted virtual servers so as to increase the server density. Nevertheless, while KSM improves the efficiency of the host system, it hurts the performance of the virtualized systems since part of the CPU cycles is spent on exploring the page sharing opportunities. In this paper, two optimization schemes, selective page comparison and checksum computation acceleration, are proposed to improve the KSM efficiency, as well as to reduce the CPU burden at the same time. Selective page comparison skips the expensive content comparison operations, which are performed by default in the original KSM for examining redundant pages, for the frequently-changing pages according to their checksums. Checksum computation acceleration shifts the CPU load of the page checksum calculation to the GPU by leveraging the in-kernel computation acceleration framework, KGPU. We implemented the two optimizations, and evaluated their performance with the web server workloads on the virtualized servers. Our results show that the speed of the page-merging process is improved by a factor of up to 1.64 with the both optimization schemes. To the best of our knowledge, we believe this is the first attempt to accelerate the KSM with the GPU, and our work paves a road toward a more sophisticated, GPU-enabled memory deduplication algorithm.
[1] Steven Hand,et al. Satori: Enlightened Page Sharing , 2009, USENIX Annual Technical Conference.
[2] Carl A. Waldspurger,et al. Memory resource management in VMware ESX server , 2002, OSDI '02.
[3] Robert Ricci,et al. Augmenting Operating Systems With the GPU , 2013, ArXiv.