AI原生存储架构:存算智一体革命
AI原生存储架构通过"存算智一体"的硬件协同设计,打破传统冯·诺依曼架构局限,实现数据就近处理。其核心采用三种范式:近数据处理(NDP)在存储设备集成计算单元;存内计算(CIM)利用存储器件物理特性直接运算;以数据为中心的架构通过高速互联形成统一内存空间。关键技术包括计算存储驱动器(CSD)设计、CXL内存池协同和存内计算芯片架构,需解决编程复杂性、标准化、验证调试等系统级挑战
AI原生存储架构实现“存算智一体”的硬件协同设计,其核心在于打破传统的以CPU为中心的冯·诺依曼架构,将计算、存储和智能决策单元在物理和逻辑层面进行深度融合与协同,以数据为中心进行高效处理。这并非简单地将存储设备与计算芯片堆叠,而是通过系统级的软硬件协同设计,实现数据在存储介质附近或内部完成计算与智能分析,从而根治“存储墙”问题,大幅提升AI工作负载的效率。
一、核心设计原则与架构范式
“存算智一体”的硬件协同设计遵循以下原则,其实现范式可归纳为三种主流路径:
| 设计原则 | 说明 | 对应的硬件协同范式 |
|---|---|---|
| 数据不动计算动 | 将计算单元尽可能靠近或嵌入数据存储的位置,最小化数据搬运的能耗与延迟。这是存算一体的核心理念。 | 1. 近数据处理 (NDP) 2. 存内计算 (CIM) |
| 异构资源池化与统一调度 | 将CPU、GPU、AI加速器、不同性能的存储介质(如SCM, NVMe SSD, HDD)视为可被统一调度和编排的池化资源。 | 3. 以数据为中心的计算架构 |
| 智能卸载与硬件加速 | 将特定的、重复性的智能任务(如数据过滤、特征提取、模型推理)固化到专用硬件中,释放主机CPU/GPU资源。 | 1. 近数据处理 (NDP) 2. 存内计算 (CIM) |
三种硬件协同范式对比:
| 范式 | 核心思想 | 典型硬件形态 | 适用场景与优势 | 挑战与现状 |
|---|---|---|---|---|
| 近数据处理 (NDP) | 在存储设备(如SSD、智能网卡)内部集成轻量级计算核心(如ARM核、FPGA),执行靠近数据的预处理、过滤、转换等操作。 | 计算型SSD (Computational Storage Drive, CSD)、智能网卡 (SmartNIC/DPU)、计算存储处理器 (CSP)。 | AI训练/推理数据预处理:在存储端完成图像解码、数据清洗、格式转换,仅将有效数据传至GPU。 数据库与分析加速:在存储层执行 WHERE过滤、JOIN、聚合操作,减少网络和主机CPU开销。 |
编程模型复杂,需要专门的SDK;应用生态仍在培育;任务卸载的粒度需要精细权衡。 |
| 存内计算 (CIM) | 利用存储器件的物理特性(如电阻、电荷)直接进行矩阵乘加等模拟计算,彻底消除数据搬运。 | 基于非易失存储器 (NVM) 的存算一体芯片,如使用ReRAM、PCM、MRAM等器件构建的存算阵列。 | 边缘AI推理:极低功耗下执行卷积神经网络(CNN)、Transformer的注意力计算,适用于手机、物联网设备。 高能效比计算:理论能效比可超越传统数字架构1-2个数量级。 |
工艺成熟度低,良率挑战大;计算精度有限(模拟计算);数字-模拟混合设计复杂度高。 |
| 以数据为中心的计算架构 | 通过高速互联(如CXL, NVLink)将计算单元(CPU, GPU, AI加速器)与各类内存、存储介质紧密耦合,形成统一的内存地址空间,由系统软件或运行时智能调度数据。 | CXL (Compute Express Link) 内存池、GPU直接存储 (GDS)、异构内存架构。 | 大模型训练:通过CXL扩展超大容量内存池,容纳整个模型的参数和激活值,避免频繁的GPU显存与主机内存/SSD之间的换入换出。 多模态数据处理:GPU可通过NVMe over Fabrics (NVMe-oF) 直接读取远端存储数据,实现存算分离架构下的高性能访问。 |
CXL协议栈和生态处于早期;内存一致性管理复杂;需要操作系统和应用程序的深度支持。 |
二、关键硬件组件与协同设计实现方法
实现上述范式需要一系列关键硬件技术的创新与协同。
-
计算存储驱动器 (CSD) 的硬件设计:
CSD是NDP的典型载体。其硬件协同设计需在标准NVMe SSD控制器基础上,集成可编程计算单元(如多核ARM处理器或FPGA),并设计高效的数据通路。- 数据通路设计:必须实现SSD闪存通道(NAND Flash Channel)与计算核心之间的直接数据通路,避免数据先经主机接口再到计算核心的迂回路径。这通常通过内部PCIe Switch或定制DMA引擎实现。
- 内存层次优化:CSD内部需集成足够的SRAM或HBM作为计算单元的本地缓存,以匹配计算单元的处理速度,避免被NAND的读取延迟拖累。
- 软件栈协同:硬件需暴露标准的编程接口(如OpenCSD API),让主机应用程序能够以函数调用的方式,将计算任务(如
filter(),transform())下推到CSD执行。
// 概念性示例:主机应用程序调用CSD上的过滤函数 #include <opencsd.h> int main() { csd_handle_t *csd = csd_open("/dev/nvme0n1"); // 定义过滤条件:筛选出 value > 100 的记录 csd_filter_predicate pred = {.column = "value", .op = CSD_GT, .value = 100}; // 将过滤任务下推到CSD硬件执行,结果直接返回到主机缓冲区 csd_execute_filter(csd, "dataset_table", &pred, output_buffer); csd_close(csd); return 0; } -
CXL内存池的硬件协同:
CXL实现了CPU与外部设备(如内存扩展卡、加速器)之间的缓存一致性互联。其硬件设计关键在于:- CXL控制器 (CXL Controller):集成在CPU和内存扩展设备中,负责处理CXL协议(如CXL.mem, CXL.cache),维护跨设备的内存一致性。
- 内存管理单元 (MMU) 扩展:系统MMU需要支持将CXL内存池中的地址映射到进程的虚拟地址空间,实现“内存即服务”。
- 异构内存管理:硬件需要与操作系统协同,通过内存热插拔、分层内存管理 (Tiered Memory Management) 等技术,将CXL内存作为DRAM的扩展或一个独立的内存层级,并由AI运行时(如PyTorch, TensorFlow)智能地将张量数据放置在最合适的层级。
-
存内计算 (CIM) 芯片的架构:
CIM芯片设计完全不同于传统数字芯片。- 存算单元阵列:核心是二维或三维的存储器单元阵列,每个单元既能存储权重,又能执行乘加运算。输入向量以电压/电流形式施加在字线(WL)上,结果从位线(BL)上以电流求和形式读出。
- 模数混合信号电路:需要高精度的数模转换器 (DAC) 将输入数字信号转换为模拟电压,以及模数转换器 (ADC) 将模拟计算结果转换回数字信号。这部分电路是功耗和面积的主要开销之一。
- 数字外围电路:包括控制器、激活函数单元、池化单元等,用于完成神经网络中非矩阵运算的部分。
三、系统级软硬件协同与挑战
“存算智一体”的最终效能取决于系统级的软硬件协同。
- 统一的资源抽象与调度:需要类似Kubernetes for Hardware的编排系统,能够感知并调度CPU、GPU、CSD、CXL内存等异构资源。AI框架需要能够声明数据的位置偏好(
data_placement_hint="near_storage"),由系统自动分配和执行。 - 挑战:
- 编程复杂性:开发者需要理解底层硬件拓扑,编程模型从“数据并行”转向“数据位置感知并行”,难度大增。
- 标准化与生态:CXL、CSD等接口和协议尚在演进中,缺乏统一的软件栈和驱动支持,生态碎片化严重。
- 验证与调试:存算一体和近数据计算涉及复杂的模拟/数字混合信号和并发访问,传统的EDA工具和调试方法面临挑战。
- 成本与性价比:专用硬件(如CIM芯片、CSD)的初期成本高昂,需要明确的性能收益(如10倍能效提升)来证明其商业价值。
结论:实现AI原生存储的“存算智一体”,硬件协同设计是基石。它从近数据处理 (NDP) 的渐进式改良,到以数据为中心架构 (CXL) 的系统级重构,再到存内计算 (CIM) 的颠覆性创新,构成了一个多层次的技术谱系。2026年的成功实践,将依赖于异构计算互联标准(如CXL)的成熟、存算一体芯片的工艺突破,以及跨越芯片、系统、到AI框架的全栈软硬件协同优化。这将使存储系统从一个被动的数据仓库,转变为一个主动、智能的数据处理单元。
参考来源
更多推荐

所有评论(0)