Abstract
Edge computing has become an indispensable architecture to provide real-time services for massive number of IoT devices and 5G platforms. To ease the effort of deploying and managing various applications on edge nodes, people usually pack their applications in containers for edge environment. However, the smooth execution of large amount of containers simultaneously on the nodes with limited computing resources remains a challenge. In this paper, we investigated the memory deduplication technology to relieve the memory pressure on edge nodes. The major difficulty is to quickly discover and merge duplicated memory pages with less CPU consumption. Based on the observed properties of memory usages for containers, we proposed a memory deduplication algorithm, called FLOMD (Fast and Low Overhead Memory Deduplication), which is based on KSM (Kernel Same-page Merging) with four novel techniques: zero page collection, search tree optimization, volatile page identification, and scanning velocity adjustment. Experiments are conducted to compare the sharing efficiency of KSM, UKSM, and FLOMD on edge nodes with various workloads. The results show that the sharing efficiency of FLOMD is more than two times higher than that of others in average.