ByteFS: System Support for (CXL-based) Memory-Semantic Solid-State Drives

πŸ“… 2025-01-09
πŸ“ˆ Citations: 0
✨ Influential: 0
πŸ“„ PDF
πŸ€– AI Summary
Existing file systems fail to harness the byte-addressable potential of CXL/PCIe memory-semantic SSDs, resulting in suboptimal read/write performance, severe write amplification, and low storage efficiency. This paper introduces ByteFSβ€”the first file system supporting unified byte- and block-granularity access. Its core innovations are: (1) a hybrid B+-tree index architecture integrating both byte- and block-level abstractions; (2) an on-device DRAM-resident structured logging and data-merge write mechanism implemented in SSD firmware; and (3) a cross-layer consistency caching strategy jointly orchestrating host page cache and SSD-side cache. Experimental evaluation demonstrates that ByteFS achieves up to 2.7Γ— higher throughput and reduces SSD write traffic by 5.1Γ— compared to state-of-the-art NVM/SSD file systems, while strictly guaranteeing crash consistency and persistence semantics.

Technology Category

Application Category

πŸ“ Abstract
Unlike non-volatile memory that resides on the processor memory bus, memory-semantic solid-state drives (SSDs) support both byte and block access granularity via PCIe or CXL interconnects. They provide scalable memory capacity using NAND flash at a much lower cost. In addition, they have different performance characteristics for their dual byte/block interface respectively, while offering essential memory semantics for upper-level software. Such a byte-accessible storage device provides new implications on the software system design. In this paper, we develop a new file system, named ByteFS, by rethinking the design primitives of file systems and SSD firmware to exploit the advantages of both byte and block-granular data accesses. ByteFS supports byte-granular data persistence to retain the persistence nature of SSDs. It extends the core data structure of file systems by enabling dual byte/block-granular data accesses. To facilitate the support for byte-granular writes, pname{} manages the internal DRAM of SSD firmware in a log-structured manner and enables data coalescing to reduce the unnecessary I/O traffic to flash chips. ByteFS also enables coordinated data caching between the host page cache and SSD cache for best utilizing the precious memory resource. We implement ByteFS on both a real programmable SSD and an emulated memory-semantic SSD for sensitivity study. Compared to state-of-the-art file systems for non-volatile memory and conventional SSDs, ByteFS outperforms them by up to 2.7$ imes$, while preserving the essential properties of a file system. ByteFS also reduces the write traffic to SSDs by up to 5.1$ imes$ by alleviating unnecessary writes caused by both metadata and data updates in file systems.
Problem

Research questions and friction points this paper is trying to address.

Solid State Drive
Byte-Addressable
Data Storage Efficiency
Innovation

Methods, ideas, or system contributions that make the work stand out.

CXL-standard
Byte-addressable
Performance-optimized
πŸ”Ž Similar Papers