Abstract

Emerging Non-Volatile Memory (NVM) technologies promise much higher memory density and energy efficiency than DRAM, at the expense of higher read/write latency and limited write endurance. Hybrid memory systems composed of DRAM and NVM have the potential to provide very large capacity of main memory for in-memory key-value (K-V) stores. However, there remains challenges to directly deploy DRAM-based K-V stores in hybrid memory systems. The performance and energy efficiency of K-V stores on hybrid memory systems have not been fully explored yet. In this paper, we propose HMCached , an in-memory K-V store built on a hybrid DRAM/NVM system. HMCached utilizes an application-level data access counting mechanism to identify frequently-accessed (hotspot) objects (i.e., K-V pairs) in NVM, and migrates them to fast DRAM to reduce the costly NVM accesses. We also propose an NVM-friendly index structure to store the frequently-updated portion of object metadata in DRAM, and thus further mitigate the NVM accesses. Moreover, we propose a benefit-aware memory reassignment policy to address the slab calcification problem in slab-based K-V store systems, and significantly improve the benefit gain from the DRAM. We implement the proposed schemes with Memcached and evaluate it with Zipfian-like workloads. Experiment results show that HMCached significantly reduces NVM accesses by 70 percent compared to the vanilla Memcached running on a DRAM/NVM hybrid memory system without any optimizations, and improves application performance by up to 50 percent. Moreover, compared to a DRAM-only system, HMCached achieves 90 percent of performance and 46 percent reduction of energy consumption for realistic (read-intensive) workloads while significantly reducing the DRAM usage by 75 percent.

Highlights

  • IN-MEMORY Key-Value (K-V) stores, such as Memcached [1], [2], have became an important component of modern data center infrastructure

  • Experiment results show that HMCached significantly reduces Non-Volatile Memory (NVM) accesses by 70 percent compared to the vanilla Memcached, and improves application performance by up to 50 percent

  • We evaluate the effectiveness of NVM-friendly index structure and benefit-aware Dynamic Random Access Memory (DRAM) reassignment schemes

Read more

Summary

INTRODUCTION

IN-MEMORY Key-Value (K-V) stores, such as Memcached [1], [2], have became an important component of modern data center infrastructure. We explore how to implement an application-level object migration policy to best utilize DRAM and NVM resource for in-memory K-V stores, such as Memcached. Previous work uses object miss rate as an indication to address the slab calcification problem [18], [19] in Memcached They are not efficient to utilize the scarce DRAM resource in hybrid memory systems. We propose several novel designs to support hotspot-aware hybrid memory management for in-memory K-V stores, including an NVM-friendly index structure, hotness-aware object migration, access frequency aware object replacement, and benefit-aware DRAM reassignment. (1) We develop an application-level object access counting mechanism to identify hot objects in the NVM, and migrate them to the DRAM These operations are performed by HMCached without any modification to hardware, OSes and user applications.

Memcached
Workload Characteristics
Motivation
DESIGN AND IMPLEMENTATION
NVM-Friendly Index Structure
Hotness-Aware Object Migration
Object Replacement Policies
Benefit-Aware DRAM Reassignment
EVALUATION
Experimental Methodology
Performance Studies
Sensitivity Studies
Efficiency of the NVM-Friendly Index Structure
Effectiveness of DRAM Reassignment
Performance and Storage Overhead
RELATED WORK
CONCLUSIONS
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call