Morning Edition
星期二, 二月 3, 2026

折鸦夜明け前

我们的同志在困难的时候,要看到成绩,要看到光明,要提高我们的勇气。

【论文阅读】Tigon: A Distributed Database for a CXL Pod

一 核心内容

本论文提出了名为 Tigon,一种基于 CXL Pod 的分布式内存数据库。

论文作者注意到 CXL 标准在强缓存一致性实现上 Snoop Filter 记录的缓存行信息过大、现有 CXL 硬件实现通常仅仅支持一小部分内存的缓存一致性,充分利用这一点划分了 HWcc 和 SWcc 区域,通过在 SWcc 中存储松散一致性的实际数据、在 HWcc 中存储高频同步原语的方式,高效地在 CXL Pod 架构下管理了跨机活跃元组(Cross-host Active Tuple, CAT)在不同主机间的迁移,利用 CLOCK 算法管理有限的 HWcc 空间,驱逐非热点数据。

在数据库本身的特性方面,Tigon 采用 2PL 两阶段锁(元数据保存在 HWcc)策略,结合 CXL 共享内存的特点改进了 Next-Key Locking 协议解决幻读问题,利用 CXL 共享内存的特性避免了 2PC 两阶段提交。

二 研究背景

【论文速读】CtXnL: A Software-Hardware Co-designed Solution for Efficient CXL-Based Transaction Processing

一 核心内容

论文作者提出了一种名为 CtXnL 的软硬件协同方案,通过区分元数据与记录数据不同程度的缓存一致性要求,降低了分布式处理系统中的开销。

CtXnL 通过 View Shim 机制将同一份数据的副本安排在不同的地址,从而巧妙骗过 CXL 的 Snoop Filter 避免其启动广播,再通过 GSync 一次性提交写回。同时,CtXnL 还设计了 VF/VBF 过滤器来避免无谓的访存操作 CXL 链路通知。

二 研究背景

Compute Express Link (CXL) 是一种总线协议,采用了 PCIe 的物理结构,但是其目的是为了达成一个逻辑上的共享内存池,CPU 和外设设备都能通过 Load/Store(不经过 RDMA 这种的数据搬运,相对更快)访问到这片共享内存上的数据。共享内存池通常通过接入 CXL 总线的 CXL 内存设备(如 CXL Type-3)实现,在不同的节点中,HPA 到 CXL 内存的 DPA 映射是一致的\(^{[2]}\)。外设设备/节点如 GPU(带有缓存和 VRAM)、CPU(带有缓存和 DRAM)等。

【论文阅读】Strata: A Cross Media File System

本文中的 NVM (Non-Volatile Memory) 和 上一篇 NOVA 中的 NVMM (Non-Volatile Main Memory) 是相同的概念。

一 核心内容

论文作者提出了一种名为 Strata 的多层次文件系统,同时管理 NVM/SSD/HDD 等多种存储系统结构层次。Strata 为用户态、内核态、存储层次进行了职责划分,进一步为 NVM/SSD/HDD 的多层存储系统上的应用程序降低延迟、提高吞吐量。

Strata 主要分为用户态的 LibFS 和内核态的 KernelFS。LibFS 负责记录 per-process 的 Update log 以及进行热点数据缓存,KernelFS 主要负责 Digest 操作。NVM 中的 Update log 能够保证写入的同步语义;Digesting 通过日志合并将随机写转化为顺序写,契合 SSD 的硬件特性。

为了保证 LibFS 的 Kernel Bypass 不会导致并发安全问题且避免大量轻度写操作的大量锁开销,Strata 采用租约(Lease)操作防止两个线程绕过内核同时修改同一个文件。

【论文阅读】NOVA: A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories

一 核心内容

论文作者提出了一种名为 NOn- Volatile memory Accelerated (NOVA) 的日志结构文件系统 (log- structured file system, LFS) 以最大化 NVMM 和 DRAM 同时存在的混合存储系统的效率。

  • NOVA 充分利用 NVMM 的随机访问特性,从传统 LFS 中放宽了局部性限制,从而实现了日志数据分离、日志链表来避免传统 LFS 的垃圾回收开销
  • NOVA 通过将空闲链表索引和 Inode 索引建立在 DRAM 中,规避了在 NVMM 中由于一致性难以保证造成的数据结构难以实现的问题
  • 除了本身是 log-structured 之外,NOVA 还在需要同时修改多个 inode 的操作(如对路径相关的操作)中采用了 journaling 技术,同时依赖 VFS 的目录锁,规避了影子分页系统的级联开销和因此强顺序数据依赖造成的性能损失

NOVA 适配了 NVMM 以及 NVMM + DRAM 混合存储系统的特点,解决了传统 LFS 中 GC 开销大的痛点,尤其在写密集的场景下表现极其优秀。

二 研究动机