一句话:提出 ARM-Dedup,通过软硬件协同把去重存储管理下放到阵列感知的 SSD FTL,显著提升 IOPS。
本文针对 SSD 阵列上块层去重因全存储空间复杂依赖而带来的高 CPU/内存开销与 I/O 性能下降问题,提出软硬件协同设计 ARM-Dedup。其思路是利用主机端去重层与 SSD 内 FTL 存在冗余双重地址映射,将去重存储管理从主机下放到 SSD;针对阵列级去重与单盘 FTL 管理范围不匹配的挑战,令 FTL 面向去重并具备阵列感知,同时重构去重软件。基于 Linux Dmdedup 与 mdraid 在 FEMU 上实现原型。实验表明其扩展性良好,合成负载 IOPS 最高提升 272%,真实负载最高提升 127%。
This paper presents a hardware/software co-design solution to efficiently implement block-layer deduplication over SSD arrays. By introducing complex and varying dependency over the entire storage space, deduplication is infamously subject to high storage management overheads in terms of CPU/memory resource usage and I/O performance degradation. To fundamentally address this problem, one intuitive idea is to offload deduplication storage management from host into SSDs, which is motivated by the redundant dual address mapping in host-side deduplication layer and intra-SSD flash translation layer (FTL). The practical implementation of this idea is nevertheless challenging because of the array-wide deduplication vs. per-SSD FTL management scope mismatch. Aiming to tackle this challenge, this paper presents a solution, called ARM-Dedup, that makes SSD FTL deduplication-oriented and array-aware and accordingly re-architects deduplication software to achieve lightweight and high-performance deduplication over an SSD array. We implemented an ARM-Dedup prototype based on the Linux Dmdedup engine and mdraid software RAID over FEMU SSD emulators. Experimental results show that ARM-Dedup has good scalability and can improve system performance significantly, such as by up to 272% and 127% higher IOPS in synthetic and real-world workloads, respectively.
@inproceedings{WenZZ0YX024,
title = {Eliminating Storage Management Overhead of Deduplication over SSD Arrays Through a Hardware/Software Co-Design},
author = {Yuhong Wen and Xiaogang Zhao and You Zhou and Tong Zhang and Shangjun Yang and Changsheng Xie and Fei Wu},
booktitle = {ASPLOS},
year = {2024},
doi = {10.1145/3620665.3640368}
}