Abstract
Kernel samepage merging (KSM) in Linux kernel archive is a memory deduplication scheme that finds duplicate pages and shares the page in order to alleviate memory bottleneck in cloud. However, because the KSM has to scan all pages in memory to find duplicate pages, KSM consumes high CPU cycles and so causes virtual machines (VMs) performance degradation [1]. This degradation of VMs performance is an obstacle in cloud to service real-time applications (i.e. Netflix) [3]. A previous work, CMD [1] proposed page grouping scheme to reduce page comparisons, but it requires special monitoring hardware, XLH [2] enhanced page sharing with the information of guest VM I/O operation. However, the CPU overhead of XLH is still very high - similar to the default KSM. to make KSM more useful, we need an optimization scheme that consume less CPU cycles. Therefore, we first profile the CPU cycle consumption of KSM and the results show that page comparison (28.77%) and page checksum (26.14%) take most of cycles. Based on the results, we propose advanced KSM for cloud computing (AKC) that consumes less CPU cycles than the default KSM. to reduce the number of page comparisons, we apply checksum based RB-tree structure. In addition, AKC decreases page checksum overhead with hardware-accelerated crc32 hash function.
Original language | English |
---|---|
Title of host publication | SoCC 2017 - Proceedings of the 2017 Symposium on Cloud Computing |
Publisher | Association for Computing Machinery, Inc |
Number of pages | 1 |
ISBN (Electronic) | 9781450350280 |
DOIs | |
Publication status | Published - 2017 Sept 24 |
Event | 2017 Symposium on Cloud Computing, SoCC 2017 - Santa Clara, United States Duration: 2017 Sept 24 → 2017 Sept 27 |
Other
Other | 2017 Symposium on Cloud Computing, SoCC 2017 |
---|---|
Country/Territory | United States |
City | Santa Clara |
Period | 17/9/24 → 17/9/27 |
Keywords
- Kernel samepage merging
- KSM
- Memory deduplication
ASJC Scopus subject areas
- Computational Theory and Mathematics
- Theoretical Computer Science