Breaking down memory walls

2020 ◽  
Vol 14 (3) ◽  
pp. 241-254
Author(s):  
Chen Luo ◽  
Michael J. Carey

Log-Structured Merge-trees (LSM-trees) have been widely used in modern NoSQL systems. Due to their out-of-place update design, LSM-trees have introduced memory walls among the memory components of multiple LSM-trees and between the write memory and the buffer cache. Optimal memory allocation among these regions is non-trivial because it is highly workload-dependent. Existing LSM-tree implementations instead adopt static memory allocation schemes due to their simplicity and robustness, sacrificing performance. In this paper, we attempt to break down these memory walls in LSM-based storage systems. We first present a memory management architecture that enables adaptive memory management. We then present a partitioned memory component structure with new flush policies to better exploit the write memory to minimize the write cost. To break down the memory wall between the write memory and the buffer cache, we further introduce a memory tuner that tunes the memory allocation between these two regions. We have conducted extensive experiments in the context of Apache AsterixDB using the YCSB and TPC-C benchmarks and we present the results here.

Author(s):  
Da-Wei Chang ◽  
Ing-Chao Lin ◽  
Yu-Shiang Chien ◽  
Chin-Lun Lin ◽  
Alvin W.-Y Su ◽  
...  

1992 ◽  
Vol 02 (04) ◽  
pp. 391-398 ◽  
Author(s):  
THEODORE JOHNSON ◽  
TIMOTHY A. DAVIS

Shared memory multiprocessor systems need efficient dynamic storage allocators, both for system purposes and to support parallel programs. Memory managers are often based on the buddy system, which provides fast allocation and release. Previous parallel buddy memory managers made no attempt to coordinate the allocation, splitting and release of blocks, and as a result needlessly fragment memory. We present a fast and simple parallel buddy memory manager that is also as space efficient as a serial buddy memory manager. We test our algorithms using memory allocation/deallocation traces collected from a parallel sparse matrix algorithm.


2014 ◽  
Vol 651-653 ◽  
pp. 1000-1003
Author(s):  
Yin Yang ◽  
Wen Yi Li ◽  
Kai Wang

In this paper, we propose a novel and efficient flash translation layer scheme called BLTF: Block Link-Table FTL. In this proposed scheme, all blocks can be used for servicing update requests, so updates operation can be performed on any of the physical blocks, through uniting log blocks and physical blocks, it can avoid uneven erasing and low block utilization. The invalid blocks, in BLTF scheme, could be reclaimed properly and intensively, it can avoid merging log blocks with physical blocks. At last, the BLTF is tested by simulation, which demonstrates the BLTF can effectively solve data storage problems. Through comparison with other algorithms, we can know that the proposed BLTF greatly prolongs service life of flash devices and improves efficiency of blocks erasing operation.


Sign in / Sign up

Export Citation Format

Share Document