DocumentCode :
62655
Title :
iBuddy: Inverse Buddy for Enhancing Memory Allocation/Deallocation Performanceon Multi-Core Systems
Author :
Park, H. ; Choi, J. ; Lee, D. ; Noh, S.H.
Author_Institution :
Dept. of Comput. Sci., Univ. of Pittsburgh, Pittsburgh, PA, USA
Volume :
64
Issue :
3
fYear :
2015
fDate :
Mar-15
Firstpage :
720
Lastpage :
732
Abstract :
We present a new buddy system for memory allocation that we call the lazy iBuddy system. This system is motivated by two observations of the widely used lazy buddy system on multi-core systems. First, most memory requests are for single page frames. However, the lazy buddy algorithm used in Linux continuously splits and coalesces memory blocks for single page frame requests even though the lazy layer is employed. Second, on multi-core systems, responses to bursty memory requests are delayed by lock contention caused by concurrent accesses of the multi-cores. The lazy iBuddy system overcomes the first problem by managing each page frame individually and coalescing pages only when an allocation of multiple page frames is requested. We devise the lazy iBuddy algorithm so that single page frame allocation can be done in O(1). The second problem is alleviated by dividing main memory into multiple buddy spaces and applying a fine-grained locking mechanism. Performance evaluation results based on various workloads on the XEON 16core with 32 GB main memory show that the lazy iBuddy system can improve memory allocation/deallocation time by up to 47 percent with an average of 35 percent compared with the lazy buddy system for the various configurations that we considered.
Keywords :
Linux; multiprocessing systems; resource allocation; software performance evaluation; storage management; Linux; XEON 16core; buddy space; coalesces memory block; concurrent access; fine grained locking mechanism; inverse buddy; lazy iBuddy algorithm; lazy iBuddy system; memory allocation performance; memory deallocation performance; multicore systems; page frame management; performance evaluation; single page frame allocation; single page frame requests; Benchmark testing; Kernel; Linux; Memory management; Resource management; Standards; Watermarking; Buddy algorithm; Dynamic memory manager; splitting and coalescing;
fLanguage :
English
Journal_Title :
Computers, IEEE Transactions on
Publisher :
ieee
ISSN :
0018-9340
Type :
jour
DOI :
10.1109/TC.2013.2296049
Filename :
6714431
Link To Document :
بازگشت