Skip to content

昇腾部署 DeepSeek

昇腾上跑大模型的对照与估算。数字来自公开规格和社区对比。通用引擎选型见部署笔记。


重点 华为昇腾和 NVIDIA 怎么对标?

国产栈换名字,职责一一对应。别背 950 发布会算力。

  1. 算力 — 昇腾 NPU(达芬奇)对 GPU;鲲鹏对服务器 CPU(ARM)。
  2. 软件 — CANN 对 CUDA;HCCL 对 NCCL 一类集合通信。
  3. 运维npu-sminvidia-smi
  4. 产品 — Atlas:边缘 200/500,加速卡 300,服务器 800,集群 900。芯片点到 910B / 910C(公开规格:910C 128GB HBM2e)。

重点 MindIE LLM 和 vLLM-Ascend 怎么选?

官方求稳,社区求快。下面数字是公开对比。

  1. MindIE LLM — 华为官方、要授权、非开源;约 45+ 模型深度验证。公开对比:4 卡加速比约 3.7,部署约 3–5 个工作日。适合 >100 卡生产、边缘要深度优化。
  2. vLLM-Ascend — Apache 2.0,对齐 vLLM 生态(公开资料称 120+ 模型);部署步骤少、可 GPU+NPU 混合。适合 <50 卡、快速验证、要投机解码等新特性。
  3. 常见验证路径 — 用 vLLM-Ascend 拉 DeepSeek 一类模型,不是 MindIE。
  4. 和通用题衔接 — NVIDIA 上仍是 vLLM / SGLang;昇腾上先问有没有官方授权、卡规模、要不要跟 GPU 混部。

推理部署时显存怎么估?和微调有何不同?

推理四块,微调还要加上优化器和梯度。长上下文时 KV 往往比权重大。

  1. 推理总显存 ≈ 权重 + KV Cache + 中间激活 + 框架开销。
  2. 权重 — 参数量(B) × 每参数字节。公开量级:7B FP16 ≈ 14GB。
  3. KV Cache — 随序列长度、batch、层数涨;长上下文和高并发时经常是大头。
  4. 激活 / 框架 — 激活约权重 5%–10%,可优化;框架约 2–4GB,每张卡再约 0.5GB。微调题多了优化器状态和梯度,别两套公式混着报。

生成速度怎么估?带宽和算力哪个更重要?

Decode 吃的是把权重从显存搬出来,带宽先于算力。

  1. 理论上限 — tokens/s ≈ 显存带宽 / 模型权重大小。
  2. 实践吞吐 — 还要除掉 KV Cache × batch:(带宽 × batch) / (参数量 + KV × batch)
  3. 硬件优先级 — 带宽 > 算力 > HBM 容量。
  4. 软件 — Continuous Batching > PagedAttention > 量化。batch 按模型大小和序列长度调,平衡延迟和吞吐。

显卡定了,CPU 和内存怎么配?

推理不等于只有 NPU。Tokenizer 和调度在 CPU;内存要给 KV 卸载留余量。

  1. CPU 干什么 — 模型加载、Tokenizer、vLLM 一类 Continuous Batching 调度。Tokenizer 串行,单核频率敏感。
  2. 核数 — 经验:16–32 物理核,高主频优先。
  3. DRAM — ≥ 加速卡显存的 1.5~2 倍。例如:80GB 卡配 128–192GB,防 OOM。
  4. 内存用在哪 — 加载时暂存权重、HiCache 把不活跃 KV 卸下来、OS / 驱动 / 容器。

npu-smi 干什么?CANN 是什么?

不会看卡、CANN 和驱动对不上,权重下了也起不来。

  1. npu-smi — 对标 nvidia-smi:卡 ID、温度、功耗、AI Core / 显存占用。常用 npu-smi info-l 列卡、watch 刷占用;-v 看工具版本是否匹配驱动。
  2. CANN — Compute Architecture for Neural Networks,对标 CUDA。向上托训练/推理引擎,向下接昇腾硬件。
  3. 部署顺序 — 先驱动 + CANN,再 Python 依赖和引擎,最后才是权重和 API。
  4. 要点 — 栈对不上就起不来,比背芯片 TFLOPS 更关键。

重点 Prefill、Decode、KV Cache 和部署有什么关系?

先一次性编码 prompt,再逐 token 生成。不缓存就会每步重算全部历史,O(n²) 爆掉。

  1. Prefill — 对整个输入并行算 K/V 写入 KV Cache,复杂度 O(n²),但只做一次。
  2. Decode — 每步只算新 token,跟缓存交互,复杂度降到约 O(n)。实时生成靠这一段。
  3. KV Cache — 用空间换时间,是所有推理框架标配;显存和吞吐主要被它和 batch 卡住。
  4. 部署含义 — 短问可以;百万级上下文不要默认全塞 HBM,要分层卸载(下一题)。

长上下文把 KV 卸到哪?哪些是模型自带、哪些要框架做?

注意力形态在模型里,把 cache 卸到内存/盘要推理框架做。不要默认全塞卡上。

  1. 模型自带(不用另写工程) — SWA 局部窗口;CSA 块压缩稀疏注意力(缓存约减 4×~8×);HCA 重度压缩当持久记忆。
  2. 框架要做 — HiCache:KV 从 NPU 卸到主机内存;HiSparse:Decode 不活跃 KV 卸 CPU;OnDisk:超长历史落到 SSD。
  3. 前缀复用 — 公共前缀交给 vLLM / SGLang 管,不是模型权重里的开关。
  4. 选型 — 对话短、并发高先抠 batch 和 PagedAttention;真要超长上下文再谈卸载层级。

昇腾上怎么把 DeepSeek 拉起来、怎么验收?

环境 → 权重 → 指定设备起 API → 打通再 bench。细节以配套白皮书为准。

  1. 拉起 — 装 CANN + Python + vLLM-Ascend → 下 DeepSeek-v4-flash 权重 → 指定 Ascend 设备起 API 服务。
  2. 功能验收 — curl 或脚本打接口,确认能生成,不是只看进程在。
  3. 性能验收benchmark.py:吞吐、平均延迟、P99。只报平均延迟会藏长尾。
  4. 资料 — 《昇腾部署 deepseek》一类技术白皮书。

小规模验证选 vLLM-Ascend;生产大集群且有授权再上 MindIE;先算显存和 DRAM,再谈模型。