近数据处理 (Near-Data Processing, NDP)
3 秒看懂
把计算搬到数据旁边,而不是把数据搬到计算旁边。 当搬运数据的能耗和延迟远超运算本身时,“让处理器靠近存储/内存”成为突破内存墙的核心思路。AI 大模型时代,数据搬运成本已成为算力扩张的第一瓶颈。
3 分钟产业解释
核心矛盾:数据搬运 vs. 算力运算
现代计算系统中,处理器的速度提升远快于内存和存储的带宽提升。一个广为引用的比例关系是:将 64 字节数据从 DRAM 搬到 CPU 核心所消耗的能量,可能比在核心上执行一次浮点乘加运算高出一到两个数量级(量级关系来自计算机体系结构学术文献的共识估计;具体数值因制程和架构而异,不同论文引用的倍数从数十倍到数百倍不等,此处不做精确数字编造)。
这意味着:在许多数据密集型工作负载中(数据库查询、推荐系统 Embedding 查表、LLM 推理中的 KV-Cache 读取、图计算、基因组分析……),系统瓶颈不在算力,而在数据搬运。
NDP 的本质
近数据处理的核心思想可以归纳为一句话:
传统架构: 数据 ───长距离搬运───▶ 处理器 ──▶ 结果
NDP架构: 数据 ──▶ 附近处理器(或可编程逻辑) ──▶ 精简结果
把轻量级但高吞吐的计算能力嵌入或紧邻数据所在的层级(DRAM 芯片内部、SSD 控制器内部、存储服务器内部),在数据产生地完成过滤/聚合/变换,只把精简后的结果传给主机 CPU/GPU。
为什么现在热?
| 驱动力 | 说明 |
|---|---|
| AI 模型参数暴涨 | LLM 从数十亿到数万亿参数,权重读取带宽需求激增 |
| 内存墙持续恶化 | DRAM 带宽增速远落后于芯片算力增速 |
| 能耗成为 HPC/AI 数据中心第一约束 | 大规模集群中数据搬运能耗占比可能过半(定性共识,具体比例因负载而异) |
| CXL 开放互连生态 | CXL 使得处理器可以以统一协议访问远端内存/加速器,降低了 NDP 集成门槛 |
| 3D 封装成熟 | 先进封装使在存储/内存器件内集成逻辑层成为可能 |
15 分钟专家深入
1. NDP 的技术光谱:从”近”到”在”
NDP 不是单一技术,而是一个连续光谱,按计算单元与数据的物理距离从远到近:
┌──────────────────────────────────────────────────────────────┐
│ 数据中心级 │ 服务器/节点级 │ 芯片/器件级 │
│ │ │ │
│ Smart NIC + │ 存储服务器内 FPGA │ PIM (Processing- │
│ Computational │ 加速;DPU 靠近存储 │ in-Memory):在 DRAM │
│ Storage 节点 │ 机箱内处理 │ die 内集成计算单元 │
│ │ │ │
│ "近"数据 ◀─────────────────────────────────────────▶ "在"数据 │
└──────────────────────────────────────────────────────────────┘
| 类别 | 计算位置 | 典型形态 | 代表方向 |
|---|---|---|---|
| Computational Storage (CS) | SSD 控制器/SoC 内 | 嵌入式处理器或 FPGA 在 SSD 内执行数据过滤、压缩、搜索 | SmartSSD、ScaleFlux、NGD(已关闭) |
| Near-Memory Processing | 存储服务器/背板 | 在存储节点内放置加速卡,减少回传主机的数据量 | SmartNIC/DPU 作为存储侧加速器 |
| Processing-in-Memory (PIM) | DRAM/SRAM die 内部 | 在内存 die 的 Bank/Array 旁或逻辑层中集成 ALU/向量单元 | Samsung PIM、SK Hynix AiM、UPMEM |
| Analog CIM (Compute-in-Memory) | 存储阵列内部 | 利用 ReRAM/PCM/SRAM 的物理特性直接在阵列中完成乘累加 | 知存科技、IBM analog AI、Mythic(已转型) |
2. 与 AI 产业链的交汇
AI 大模型是 NDP 最具商业想象力的下游场景之一,原因是工作负载特征高度匹配:
LLM 推理中的典型数据搬运场景:
────────────────────────────────────
[1] 权重加载:数十GB参数从HBM/DRAM读出 → 乘累加
[2] KV-Cache 读取:长上下文推理时,每生成一个token需读取整个KV-Cache
[3] Embedding 查表:推荐系统中大规模Embedding表的随机读取
[4] MoE路由:稀疏激活模型中,Expert权重的按需加载
关键洞察:上述场景的共同特征是”算术强度(Arithmetic Intensity)极低”——即每读取一单位数据只做少量计算,完全受内存带宽限制(memory-bound)。这恰恰是 NDP 最能发挥价值的场景。
3. CXL 催化下的 NDP 新范式
CXL(Compute Express Link)为 NDP 带来了标准化的互连底座:
- CXL 2.0/3.0 支持内存池化(Memory Pooling)和内存共享(Shared Memory),使远端内存对主机透明可访问
- NDP 加速器可以作为 CXL Type-2 设备挂在 CXL switch 后面,对主机呈现为”带计算能力的内存”
- 这比传统的 PCIe Computational Storage 方案拥有更统一的内存语义,降低了软件栈适配成本
传统方案:
CPU ──PCIe──▶ SmartSSD (需要独立的I/O栈)
CXL NDP 方案(概念示意):
CPU ──CXL──▶ CXL Switch ──▶ [NDP加速器 + 内存池]
│
└── 主机看到的是统一的内存地址空间
加速器对部分地址范围做近数据处理
4. 在 HBM 内部做 PIM:与 AI 芯片的直接耦合
HBM(High Bandwidth Memory)堆叠结构天然适合 PIM——其底部逻辑层(logic die)可以集成计算单元,直接利用 HBM 内部的极高带宽(HBM 内部通道带宽远高于芯片对外的 HBM 接口带宽)。
行业动态(截至已公开信息):
- Samsung 发布了基于 HBM2/Aquabolt 的 PIM 方案(称为 HBM-PIM),在每个 DRAM die 的 bank 内部(存储阵列与 TSV 之间)嵌入可编程向量处理单元,面向数据中心和 AI 推理场景。后续有面向 HBM 代际演进的 PIM 路线图探讨(具体量产状态和制程细节未充分披露)。
- SK Hynix 公开了 AiM(Accelerator-in-Memory)概念,将 GDDR6 内存与计算单元结合,面向 AI 推理和图计算。也有基于 HBM 的 PIM 研究方向。
- 学术界(如 UCSD、ETH Zurich、Georgia Tech、首尔国立大学等团队)在 DRAM PIM 架构设计、编程模型、编译器方面有大量工作。
技术原理
为什么”移动数据”这么贵?
从基本物理和电路原理出发:
能量消耗的量级分解(概念性,非精确值):
═══════════════════════════════════════════════════════
操作类型 │ 典型能量量级(数量级估计)
─────────────────┼─────────────────────────────────
64位浮点乘加(FMA) │ ~1 pJ(皮焦) [片上计算]
L2 Cache 读取 │ ~10 pJ [片上SRAM]
DRAM 芯片内读取 │ ~数-数十 fJ/bit [芯片内访问]
片外 DRAM 读取 │ ~数-数十 pJ/bit [跨封装/PCB]
PCIe/CXL 传输 │ 更高(涉及SerDes) [跨芯片互连]
═══════════════════════════════════════════════════════
注:以上为体系结构文献中的数量级共识,不同工艺节点/电路设计
差异显著,此处仅展示相对量级关系,不作为精确规格引用。
关键推论:一次 64-bit DRAM 访问的能耗可能相当于数十到数百次浮点运算的能耗(量级估计,因代际和具体电路而异)。因此,如果能在 DRAM 芯片内部用少量计算单元过滤/聚合数据,传回主机的只有精简结果,总能耗可能显著下降。
PIM 的基本架构原理
┌────────────────────────────────────────────────────────┐
│ 传统 DRAM Die │
│ │
│ Bank 0 Bank 1 Bank 2 Bank 3 ... Bank N │
│ │ │ │ │ │ │
│ └───────┴───────┴───────┴─────────────┘ │
│ │ (内部带宽极高) │
│ ▼ │
│ I/O Interface ──▶ 片外总线 ──▶ CPU │
│ (带宽瓶颈) │
└────────────────────────────────────────────────────────┘
┌────────────────────────────────────────────────────────┐
│ PIM-Enabled DRAM Die │
│ │
│ Bank 0 Bank 1 Bank 2 Bank 3 ... Bank N │
│ │ │ │ │ │ │
│ ▼ ▼ ▼ ▼ ▼ │
│ [ALU] [ALU] [ALU] [ALU] ... [ALU] │
│ [Buffer] [Buffer] ... │
│ │ │ │ │ │ │
│ └───────┴───────┴───────┴─────────────┘ │
│ │ (仅精简结果) │
│ ▼ │
│ I/O Interface ──▶ 片外总线 ──▶ CPU │
│ (带宽需求大幅降低) │
└────────────────────────────────────────────────────────┘
关键设计参数与约束:
| 维度 | 设计考量 |
|---|---|
| ALU 精度/宽度 | PIM 内计算单元面积预算受限(不能挤占太多存储阵列面积),通常倾向于窄位宽/低精度向量单元 |
| 存储阵列 vs. 逻辑层面积比 | 存储密度是 DRAM 的核心商业指标,PIM 逻辑面积占比需严格控制 |
| 编程模型 | 如何让软件有效利用分布式在 Bank 级的计算单元?SIMD/SIMT 模型、DMA 调度、与主机协作的 offload 模型 |
| 功耗预算 | DRAM die 的功耗(含刷新)本身已接近散热极限,PIM 计算不能大幅增加总功耗 |
| 可靠性 | 计算逻辑产生的热量是否影响邻近 DRAM 单元的保持时间(retention time)? |
| 良率 | 逻辑层额外电路增加了 die 的复杂度,对良率有影响 |
Computational Storage 的架构原理
┌─────────────────── SSD 内部 ───────────────────┐
│ │
│ NAND Flash 阵列(多通道) │
│ │ │ │ │ │ │ │ │ │
│ └──┴──┴──┴──┴──┴──┴──┘ │
│ │ │
│ ┌─────────────────▼──────────────────┐ │
│ │ SSD 控制器 SoC │ │
│ │ ┌──────────┐ ┌───────────────┐ │ │
│ │ │ 传统 FTL │ │ 嵌入式 CPU │ │ │
│ │ │ (闪存转换) │ │ / FPGA / │ │ │
│ │ │ │ │ 加速引擎 │ │ │
│ │ └──────────┘ │ (NDP计算单元) │ │ │
│ │ └───────────────┘ │ │
│ └────────────────────────────────────┘ │
│ │ │
│ PCIe / NVMe 接口 │
└────────────────────┬─────────────────────────────┘
│
▼
主机 CPU
(接收精简结果,而非原始数据)
典型 NDP 操作:数据库 SELECT/WHERE 过滤、正则匹配搜索、压缩/解压缩、加密/解密、向量距离计算等——都是可以”就地处理、只返回匹配行”的操作。
Analog CIM(模拟存内计算)原理
这是一种更激进的路线,利用存储器件的物理特性直接完成矩阵运算:
ReRAM / PCM 交叉阵列 (Crossbar Array):
═══════════════════════════════════════
输入电压向量 V_in(模拟值)
│
▼
┌──────────────┐
│ R₁₁ R₁₂ ... R₁ₙ│
│ R₂₁ R₂₂ ... R₂ₙ│ 每个交叉点的电导 G = 1/R
│ ... │ 代表权重值 W
│ Rₘ₁ Rₘ₂ ... Rₘₙ│
└──────┬───────┘
│ 输出电流 I = G × V = W × V_in
▼
输出电流向量 I_out = W × V_in(矩阵-向量乘法)
——利用基尔霍夫电流定律在物理上完成,无需数字乘法器
优势:矩阵乘法在一步物理操作中完成,能效极高。 挑战:精度受限(模拟噪声、器件变异性)、ADC/DAC 开销、编程灵活性差、器件耐久性。目前主要停留在研究和部分低精度推理场景。
技术演进史
| 时期 | 里程碑 | 意义 |
|---|---|---|
| 1990s | IRAM(Intelligent RAM)概念提出(UC Berkeley, David Patterson 等) | 学术界首次系统提出在 DRAM 中集成处理器的思想,但当时 DRAM 工艺与逻辑工艺差异大,未落地 |
| 2000s | Active Disk / IDISK 概念 | 在磁盘控制器中嵌入处理器,处理大数据集扫描,是 Computational Storage 的前身 |
| 2010s 前期 | 学术复兴期:PIM 学术工作大量涌现(加 Berkeley、CMU、ETH、首尔国立等) | 3D 封装技术成熟使 PIM 变得可行;学术界提出多种 PIM 架构和编程模型 |
| 2015-2018 | NGD Systems、ScaleFlux、Eideticom 等创业公司成立 | Computational Storage 从学术走向工程化 |
| 2018-2019 | Samsung SmartSSD(与 Xilinx 合作)原型展示 | 大厂参与,FPGA 嵌入 SSD 验证了加速数据库查询的可行性 |
| 2019-2021 | UPMEM 商用 PIM DRAM 模块发布 | 首个商业化 PIM 产品,面向数据中心数据分析和基因组场景 |
| 2021-2022 | Samsung HBM-PIM (Aquabolt-XL)、SK Hynix AiM 先后公开 | DRAM 巨头正式将 PIM 纳入产品路线图讨论 |
| 2021-2023 | SNIA Computational Storage 标准推进;CXL 生态加速 | 行业标准化与互连统一推动 NDP 从”实验性”走向”可集成” |
| 2023+ | 大模型推理对 memory-bound 场景的需求激增 | NDP(尤其 PIM 和 CXL-attached 加速器)被重新审视为 AI 推理的关键使能技术 |
技术路线对比
| 维度 | Computational Storage(SSD 内) | PIM(DRAM 内) | Analog CIM(ReRAM/PCM) | CXL-attached NDP | SmartNIC/DPU 近存储 |
|---|---|---|---|---|---|
| 数据驻留层 | NAND Flash | DRAM | 非易失存储器 | 远端内存/存储 | 存储服务器内 |
| 适合操作 | 扫描/过滤/压缩/加密 | 向量运算/哈希/聚合/稀疏查表 | 矩阵乘法(低精度推理) | 灵活可编程 | 网络+存储联合处理 |
| 计算精度 | 数字,高精度 | 数字,中-高精度 | 模拟,低-中精度 | 数字,取决于实现 | 数字,高精度 |
| 编程灵活性 | 中等(需适配 SSD 固件) | 中等(Bank 级并行,需新编程模型) | 低(受限于器件物理特性) | 较高(CXL 协议标准化) | 较高(通用 DPU 编程) |
| 成熟度 | ★★★ 有商用产品 | ★★☆ 有原型/小规模商用 | ★☆☆ 主要为研究阶段 | ★★☆ 规范已发布,产品初期 | ★★★ 成熟产品线 |
| 与 AI 的相关性 | 中(数据预处理) | 高(推理中的 memory-bound 访问) | 高(模拟推理加速) | 高(内存池化+近数据计算) | 中(数据管线加速) |
| 主要障碍 | 生态/软件栈不成熟 | DRAM 良率、编程模型、散热 | 精度、耐久性、ADC 开销 | 生态建设中,延迟开销 | 通用性 vs. 专用性的平衡 |
上下游
上游(供给侧)
上游产业链简化图:
════════════════════════════════════════
NDP 核心芯片/器件
├── PIM DRAM ──▶ DRAM 厂商(Samsung, SK Hynix, Micron)
│ 需要修改 DRAM 工艺/设计流程
│ 需要 3D TSV/混合键合封装能力
│
├── Computational Storage SoC
│ ├── NAND Flash ──▶ 存储介质厂商
│ ├── 控制器 ──▶ SSD 控制器厂商 + FPGA/IP 供应商
│ └── 嵌入式处理器 ──▶ ARM/RISC-V IP
│
├── CXL 加速器芯片 ──▶ CXL IP 供应商 + 代工厂
│
└── ReRAM/PCM 器件 ──▶ 新兴存储器厂商
下游(需求侧)
| 下游场景 | NDP 价值点 | 当前渗透率 |
|---|---|---|
| LLM 推理(尤其长上下文) | KV-Cache 近数据读取,减少 HBM 带宽压力 | 极低,研究/原型阶段 |
| 推荐系统 | 大规模 Embedding 表近数据查表 | 低,部分厂商内部试点 |
| 数据库查询加速 | SQL 下推到存储层 | 中,有商用案例 |
| 基因组/生命科学 | 大规模序列比对/搜索的就地处理 | 低-中,学术和垂直行业 |
| 图计算 | 随机内存访问模式下 PIM 避免集中式带宽瓶颈 | 低,学术为主 |
| 安全/加密 | 存储内加密引擎减少数据暴露面 | 中,嵌入式安全引擎已有 |
关键指标
| 指标 | 说明 | 为何重要 |
|---|---|---|
| 数据搬运能耗节省比 | NDP vs. 传统方案搬运单位数据的能耗比 | 直接衡量 NDP 的能效价值 |
| 有效带宽倍增因子 | 同一内存/存储器件下,NDP 带来的等效可用带宽提升 | PIM 可将内部带宽利用起来,等效于增加外部带宽 |
| 算术强度阈值(break-even) | 工作负载的计算/访存比需超过某阈值才能从 NDP 受益 | 太低→纯搬运数据无计算,NDP 无优势;太高→本来就不受带宽限制 |
| 面积开销 / 密度损失 | PIM 逻辑层占用的 die 面积占存储阵列的比例 | 面积开销过大则存储密度下降,DRAM 厂商难以接受 |
| 编程模型成熟度 | 是否有主流编译器/框架支持 | 软件生态决定技术能否被广泛采纳 |
| 与现有软件栈的兼容性 | 是否需要重写应用 vs. 自动下推 | 实际部署的关键门槛 |
供需与市场数据
市场规模估计
- Computational Storage 市场:多个行业分析机构(如 Omdia、MarketsandMarkets 等)对其有预测,口径和数字各异。共同趋势是预期 2020s 后半段显著增长,主要由数据中心和 AI 推理驱动。具体数字因报告而异,此处不引用单一来源以免误导,建议读者查阅最新行业报告获取可比口径数据。
- PIM 市场:尚无独立的市场统计口径,通常被归入更广义的”内存计算”或”AI 加速器”范畴。当前收入规模较小(原型/小批量阶段)。
供需格局
| 角色 | 玩家 | 状态 |
|---|---|---|
| DRAM PIM 领导者 | Samsung, SK Hynix | 均已公开展示原型/样品,量产规模和商用客户细节 [未充分披露] |
| Computational Storage 初创 | ScaleFlux(仍在活跃), NGD Systems(已关闭), Eideticom | 市场洗牌中,部分公司已转型或关闭 |
| CXL NDP 探索者 | Samsung, SK Hynix, Astera Labs, Montage(澜起科技), 多家初创 | 产品初期阶段 |
| 学术/开源推动 | UCSD (PIM 前沿), ETH Zurich, Seoul National Univ., UC Berkeley | 定义 PIM 编程模型和基准测试 |
| 标准化 | SNIA (Computational Storage TWG), CXL Consortium, OCP | 标准推进中 |
代表公司与资本映射
| 公司 | NDP 路线 | 上市/融资状态 | 关键信息 |
|---|---|---|---|
| Samsung | HBM-PIM、SmartSSD | 韩国上市 | 同时拥有 DRAM 制造和 NAND 存储业务,PIM 产品线覆盖最全 |
| SK Hynix | AiM (GDDR/HBM) | 韩国上市 | 积极推进 PIM 商用,GDDR6-AiM 已有原型展示 |
| Micron | 存储内计算研究 | 美国上市 | 公开信息相对较少,但有 PIM 相关专利和研究 |
| ScaleFlux | Computational Storage SSD | 私有 | 在压缩加速 SSD 方面有商用产品 |
| UPMEM | PIM DRAM 模块 | 私有 | 最早商用化的 PIM 产品之一 |
| Astera Labs | CXL 连接/加速 | 美国上市 (2024) | CXL retimer/switch 产品,为 NDP 生态提供互连基础设施 |
| 澜起科技 (Montage) | CXL 内存扩展控制器 | 中国上市 (688008.SH) | CXL MXC 芯片,为 CXL 内存池化提供关键器件 |
| 知存科技 | 存内计算芯片 (ReRAM/SRAM CIM) | 私有 | 国内存内计算方向的代表性创业公司 |
投资逻辑
看多逻辑(长线)
- 数据搬运是计算系统的”暗税”:随着模型规模和数据量持续增长,数据搬运的绝对成本只会越来越高,NDP 是根本性的架构解法。
- AI 推理的 memory-bound 特性:LLM 推理中,尤其长上下文场景,KV-Cache 和权重读取是带宽瓶颈——这正是 PIM 的甜区。
- CXL 生态闭环:CXL 为 NDP 提供了标准化的”接入点”,降低了碎片化风险。CXL 产业链上游(retimer、switch、控制器 IP)的确定性较高。
- DRAM 厂商的差异化诉求:在标准 DRAM 商品化竞争中,PIM 为厂商提供了差异化和增值空间。
风险/不确定性
- 软件生态滞后:硬件就绪但软件栈不成熟是 NDP 最大的落地障碍。主流 AI 框架(PyTorch/TF)对 PIM 无原生支持。
- 竞品路线:更大容量/带宽的 HBM(HBM4 等)、更大的片上 SRAM、Chiplet 内部互连等方案可能在不改变编程模型的前提下缓解带宽瓶颈,削弱 NDP 的紧迫性。
- 商业化节奏不确定:PIM 已讨论多年但尚未大规模商用,投资回报周期可能较长。
- DRAM 良率风险:PIM 逻辑层增加了 DRAM 设计和制造复杂度,良率下降的成本谁承担?
常见误读纠偏
❌ 误读 1:“NDP 可以替代 CPU/GPU,实现通用计算加速”
纠偏:NDP 不是通用计算替代方案。PIM 内的计算单元面积、功耗和精度预算都远低于独立的 CPU/GPU。NDP 的价值在于消除数据搬运瓶颈,适用于 memory-bound(低算术强度)操作。如果工作负载本身就是 compute-bound(高算术强度),NDP 的收益有限甚至为负(因为 PIM 内的计算单元比专用 GPU 效率低得多)。
❌ 误读 2:“PIM 就是在 DRAM 里塞一个 CPU”
纠偏:PIM 内的计算单元不是通用 CPU,而是面向特定操作模式优化的简单 ALU / SIMD 单元 / 向量引擎。它们的指令集通常非常精简,执行的是可以在 Bank/Array 级并行的简单操作(逐元素加法、比较、查找、累加等)。通用 CPU 的控制逻辑开销在 PIM 中是不可接受的面积和功耗负担。
❌ 误读 3:“Computational Storage 等于把数据库引擎塞进 SSD”
纠偏:绝大多数 Computational Storage 设备执行的是**下推(pushdown)**操作——将过滤、投影、聚合等简单操作下发到存储侧执行,而非运行完整的数据库引擎。这类似于数据库的”谓词下推”思想在存储硬件层面的实现。完整的查询优化、事务管理、连接操作仍由主机侧数据库负责。
❌ 误读 4:“NDP 是新概念,近几年才出现”
纠偏:NDP 的学术思想可以追溯到 1990 年代(IRAM、Active Disk 等项目)。它之所以近年重新受到关注,是因为:① 3D 封装技术使在存储 die 内集成逻辑变得可行;② 数据密集型应用(AI、大数据)使数据搬运问题从”工程烦恼”升级为”系统瓶颈”。这是老概念 + 新使能技术 + 新需求的组合。
学习路径
入门
- 理解内存墙问题:阅读 Hennessy & Patterson《计算机体系结构:量化研究方法》中关于内存层次和能耗的章节。
- SNIA Computational Storage 技术白皮书:了解行业标准化的定义和用例。
- Samsung PIM / SK Hynix AiM 的公开技术博客和新闻稿:了解厂商视角。
进阶
- 经典 PIM 学术论文:
- O. Mutlu et al., “A Modern Primer on P