YouMind
登录

DGX Spark 使用手册

@exolabs
英语2026年9月25日
160K
560
80
26
1.2K

TL;DR

一份关于部署 NVIDIA DGX Spark 单元进行本地 AI 推理的综合手册,涵盖硬件连接、模型选择、量化处理及成本分析。

作者:@0xSero

审阅者:@alexocheema 和 @alexzfunk

特别感谢:@MiaAI_lab

如果你正考虑在本地跑推理,那你一定会听说这块有趣的“金砖”。这是一台专为本地运行 AI 而生的机器,设计得小巧、整洁、安静,而且相对便宜(NVIDIA 的 DGX Spark 页面)。

刚听说 DGX Spark 时,我其实并不感冒。 尽管它有 128 GB 内存,但 273 GB/s 的内存带宽 看起来实在太低了。作为参考,一张 RTX 5090 虽然只有 32 GB 显存,带宽却高达约 6.5 倍(1,792 GB/s)。

EXO Labs - inline image

Spark 刚发布那会儿,像 speculative decoding(投机解码) 这样的推理工程实践还没那么普及,大多数小模型的能力也还不够看。

随着 AI 行业不断演进,智能正在被压缩进越来越小的体积里,这让这些小盒子终于能发挥出全部潜力。

  1. 推理工程的需求正在爆发。
  2. LLM 在推理工程方面变得越来越强。
  3. 高质量的推理能提升整个系统表现。

如今的 DGX Spark 已经能在家里或办公室里,跑出速度媲美云服务的超智能模型。市面上有海量 AI 软件可以帮你写代码、报税、学习,或者纯粹逗你开心。

这里说的“速度”是指单个人看到的每秒 token 数。云端硬件其实快得多,但服务商要分给无数用户,还要抠每个 token 的成本,所以每个人分到的就少了。而在家里,这台机器是你一个人的,所有算力都归你。进阶笔记里有更多细节。

Spark 天生就该连起来用

DGX Spark 非常省电。加载并运行模型时,功耗通常也就 95 W 左右。

正因如此,它不需要多强的散热,比独立显卡安静得多。你可以放心地把 2 到 4 台叠在一起,插在 美国标准电路 上,完全不用担心跳闸。重点不在于绝对能效,而在于这一点:按单位内存速度算,数据中心的 B300 每焦耳大约能干两倍的活(见进阶笔记)。但 Spark 只要插进普通墙插就能用。

每台 Spark 都配有一张 带两个 QSFP 端口的 ConnectX-7 网卡,速率达 200 Gb/s,也就是 25 GB/s。这意味着你可以 把多台 Spark 连起来,从而扩大内存和有效内存带宽。

EXO Labs - inline image

DGX Spark 的连接方式

借助 tensor parallelism(张量并行),每个权重矩阵会被拆分到各台 Spark 上,每台 Spark 同时只从自己的内存里读取属于自己的那一份。于是读取速度就叠加起来了(NVIDIA 官方的扩展测试):

  • 两台 Spark:546 GB/s
  • 三台:819 GB/s
  • 四台:1,092 GB/s

这几乎是线性扩展的。在 NVIDIA 自己的测试中,写入速度在两台 Spark 上快了 2 倍,四台上快了 3.7 倍(表 3)。效果之所以这么好,是因为 ConnectX-7 链路延迟极低,而且 CUDA 可以直接在 GPU 代码内部完成 Spark 之间的数据搬运(原因详见这里)。

内存也是同理叠加:每台 128 GB,四台就是 512 GB,其中每台大约有 120 GB 能真正用于 AI 负载。

能把 Spark 堆叠起来,直接缓解了它最大的短板——内存带宽偏低。加上只需普通插座供电的低功耗,它对单人用户或小家庭来说简直完美。

EXO Labs - inline image

现实中连起来的 DGX Spark

Dense vs MoE

目前主流的模型架构有两种:稀疏(sparse)和稠密(dense)。像 Qwen3.6-35B 这样的 Mixture-of-experts(混合专家,MoE)模型,每生成一个 token 只激活 3B 参数,比 Qwen3.8-27B 少了 9 倍。

这让稀疏 LLM 特别适合 DGX Spark。它们与较低的内存带宽相得益彰,即便模型总参数量很大,用户依然能获得流畅的体验。

MoE 不只是对 DGX Spark 友好,在数据中心里它同样是更优的架构。本地场景的变化在于跨过了一个门槛:我们对速度有基本期待,而那些足够聪明的 dense 模型又太大,在家里根本跑不出那个速度。MoE 模型跨过了这条线,所以现在它们在本地硬件上既好用又快。Dense 模型最终或许也能做到。

EXO Labs - inline image

Dense LLM 与 MoE 对比

Speculative Decoding(投机解码)

任何支持 MTP、DSpark 或 DFlash 的 LLM 都会更合适,因为 draft model(草稿模型)通常极小,生成正确 token 所需的计算量很少。

它能显著提升 Spark 的吞吐量,代价只是占用 1 到 2 GB 内存——而 Spark 最不缺的就是内存。

和 MoE 一样,投机解码在哪儿都有用,不只在家里。但正是这两者联手,才把本地 AI 推过了那道门槛。以前,最强的开源模型在消费级硬件上跑得慢得让人抓狂。

EXO Labs - inline image

投机解码如何提升吞吐量

同时跑多个 Agent

一台 Spark 可以同时处理八个甚至更多请求,而且每个都能保持对话级的响应速度。比如具备基础编程、电脑与浏览器操作、视频图像剪辑以及通用问答能力的 Qwen3.6-35B,最多能同时服务 8 个会话,每个约 40 tok/s。

作为参考,在 ChatGPT Pro 订阅下,GPT-6-Astra 的平均速度是 37 tok/s。

EXO Labs - inline image

Astra 平均速度

之所以能做到,是因为 Spark 相对于它的内存速度拥有极其充裕的算力。同时服务八个人,意味着每一步还是只读一次模型,但要算八倍的量——而 Spark 的算力绰绰有余。在 16-bit 下,它对应 273 GB/s 的带宽有约 100 TFLOPS,相当于每读取一字节内存能做约 370 次运算。而 M3 Ultra 对应 819 GB/s 只有约 26 TFLOPS,也就是约 32 次(EXO 的数据)。也就是说,每字节的计算量高出约 11 倍,这还没算上 Spark 的 4-bit 硬件加速,而 Mac 并没有这个。

实战干活

一台 Spark 上的 Qwen3.6-35B 做了一段视频,一天内播放量就破了 8 万。整个过程只花了 3 分钟:它读取了一个包含 3 段视频的文件夹,把它们拼接起来,并在帧率不超过 X 平台限制的前提下把视频加速了 4 倍。

https://x.com/0xSero/status/2072206209323802746

价格

DGX Spark 最初定价 3,999 美元,后来 涨到了 4,699 美元。2026 年所有硬件都在涨价。

实际到手价更高。 NVIDIA 官方商城早就 卖空了。我能找到的最低价大约是 5,000 美元,二手要卖到 6,000 美元左右;9 月 21 日那天,我甚至看到 NVIDIA 官网标价 7,999 美元——五周前我买同款才花了 4,699 美元。

EXO Labs - inline image

GX10 价格

9 月 21 日的 NVIDIA 商城。原帖

EXO Labs - inline image

4000$ - 4700%

购买建议

  • 任何 GB10 主机都行。 ASUS、Dell、MSI 等厂商都在卖同款芯片的主机。它们跑的软件和配置方案都一样。注意看 SSD 容量:一旦你存了几个大模型,1 TB 很快就满了。我建议直接上 4 TB。
  • 买第二台 Spark 时一定要带上连接线, 你需要它把两台机器连起来。
  • 部分 OEM 提供的 Spark 风道设计更好

功耗、噪音和你的电费单

独立显卡的噪音和发热可不是闹着玩的:4 张 3090 轻松吃掉 1600-2000W,换来的内存却只有人家的五分之一。我之前不得不把 RTX Pro 6000 主机搬出书房,因为它经常把房间烤到 35℃。

美国家庭的标准电路可以安全地全天承载约 1,440 瓦(美国电气规范)。再高就得拉新线路,也就是得请电工了。

  • 一台 Spark 跑模型大约耗电 90-200 瓦(ServeTheHome)。如果 24 小时开机,每月大概 12 美元。
  • 四台 Spark 加起来约 500 瓦,交换机约 240W。每月大约 66-100 美元,而且全插在一个插排上就行。
  • 我的四卡主机 峰值达到 1,600 瓦。这已经超过一条电路的承受极限了,每月电费约 300 美元。
EXO Labs - inline image

这些数字是怎么来的。 每组数据的测量条件不同,所以我把它们并列放在一起。月度成本按设备 24 小时满载、电价 18 美分/kWh 计算:

EXO Labs - inline image

我的实测

为什么四台 Spark 的功耗不止 90 W 的四倍。 90 W 是一台 Spark 单独跑模型时的数据。当一个大模型被拆到四台机器上时,每台 Spark 都要参与每个词的计算,网络链路也一直满载,所以每台功耗会更高,我测下来平均约 125 W。因此每月 12 美元和 66 美元都是 24 小时满载跑满的成本。实际使用中有空闲时间,花费会更少。

电费也没变便宜的迹象。今年美国家庭电价 涨了约 5%,达到 18 美分/kWh 左右,部分原因就是新建了一堆数据中心。8 月份,我自己的账单 直接翻倍到了每月 1,000 美元——GPU 主机、两台 Spark 加四台空调全开着。

EXO Labs - inline image

DGX Spark 的声音

那噪音呢?我的 GPU 主机响得像喷气发动机。而这,是四台 Spark 能发出的最大声音:

几个实用小贴士:

  • 它们能跑各种 AI 模型、世界模型、图像生成等等。
  • 侧立放置。 我发现这样散热更好,网孔周围也更通风。
  • 加入 Discord / Reddit / X 社区,排查问题时有人帮忙
  • 给你的所有机器部署 Tailscale
EXO Labs - inline image

我真正在跑的六个模型

我试过几十个,最后反复用的就这六个。

EXO Labs - inline image

一个 token 大约等于四分之三个单词,速度超过 30 读起来就像正常聊天了。

为什么每个数字都要标明任务。 这些配置大多用了投机解码,靠一个小助手提前猜词。代码和 JSON 很好猜,散文就很难,所以同一台机器上的同一个模型,跑不同任务的速度能差一倍。提示词越长也会越慢。因此这里的每个速度都标明了当时在生成什么内容、提示词有多长:

想跨多种任务严谨地衡量性能,可以用 NVIDIA 的 SPEED-Bench,它在 11 个类别的真实提示词、1K 到 32K token 的输入长度下测试了投机解码。我还没在 Spark 上跑过它。

EXO Labs - inline image

两台 Spark 上的 Qwen3.8-Flash-Next 在做动画和小游戏。(9 月 21 日)原帖

去哪下载。 每个模型都有官方页面,第 6 节给出了经过实测的 Spark 配置方案:

大模型到底是怎么塞进去的

答案是量化(quantization)。量化会压缩模型的权重,而且是有损的:每个权重用更少的 bit 存储(比如 4 bit 而不是 16 bit),模型体积就缩到四分之一,但会丢失一些细节。目标是在压缩权重的同时,尽可能保留原始模型的表现。

压得越狠,质量越差。Turboderp 针对 Qwen3.8-27B 做过测量。每个点代表一个压缩版本。越靠左体积越小,越靠下越接近原版:

EXO Labs - inline image

多家提供商的 Qwen3.6-35B-A3B 压缩版本的平均 KL 散度与磁盘大小关系。对数坐标。图表来源:https://huggingface.co/turboderp/Qwen3.8-27B-exl3

在 Spark 上有两种格式值得关注:

  • NVFP4 是 NVIDIA 的 4-bit 格式,Spark 的芯片可以直接读取。Qwen3.6-35B 从 72 GB 降到 24 GB,一台 Spark 装完还绰绰有余。
  • EXL3 允许你精确指定用多少 bit。GLM-5.3-Flash 在 4-bit 下是 176 GB,两台 Spark 刚好装下;2-bit 下是 85 GB,一台就能装,只是精度会稍差一点。
EXO Labs - inline image

提示:

小模型用 4-bit 最合适,大模型用 3-bit

怎么判断压缩后的模型还能不能用。 优秀的模型卡片会说明小版本与原版的接近程度。重点看两个指标:

  • Top-1 agreement(Top-1 一致率): 小模型预测的下一个词与原版相同的概率。越高越好。我的 单机版 GLM-5.3-Flash 一致率约 80%。
  • KL divergence(KL 散度): 预测分布偏离原版的程度。越低越好。我的 未剪枝 3-bit GLM-5.3 得分 0.089。而 剪枝后的 197 GB 版本 得分 0.511。这就是为了少用几台 Spark 所付出的代价。

6. 从一台到四台:手把手升级路线

这是大家问我最多的部分。一步一步来,每一步都能独立使用,觉得够用了随时可以停。

EXO Labs - inline image

下面大部分配置方案来自 MiaAI Lab,他们把最优的 Spark 部署打包成仓库,clone 下来一条命令就能跑起来。有几个是我自己做的。每个方案都标明了测试环境和运行速度。

以下操作在每台 Spark 上做一次即可:

  1. 更新系统。 在 DGX Dashboard 里执行更新,然后重启。
  2. 让笔记本能连上它。 用 NVIDIA Sync 或直接 SSH。如果想在外网访问,NVIDIA 提供了 Tailscale playbook。
  3. 注册 Hugging Face 账号并创建 token。 大多数方案都要用它下载模型。把它写进 .env 文件,千万别提交到仓库里。
  4. 检查磁盘空间。 模型都很大。单机方案需要约 25 到 130 GB 剩余空间。四机 DeepSeek 方案在第一台 Spark 上需要约 476 GB。
  5. Docker 已经预装了。 DGX OS 自带 Docker,几乎所有方案都在容器里跑,所以你不用手动装 Python 包。

第一步:一台 Spark

先用 LM Studio 上手。 照着 NVIDIA 的 分步指南 走,下载 Qwen3.6-35B,开始聊天。大概花一个小时。这能让你在折腾复杂东西之前,先确认机器没问题。

然后再用配置方案。 这些方案基于 vLLM 或 SGLang,比 LM Studio 更快,还能同时服务多个 Agent。挑一个:

  1. Qwen3.6-35B(4-bit NVFP4)MiaAI Lab 单用户 95 tok/s,八用户总计 317 ~50 GB
  2. Qwen3.8-27B(4-bit NVFP4)MiaAI Lab 搭配 DSpark 助手跑代码约 51 tok/s,聊天约 23 ~24 GB
  3. Qwen3.8-Flash-Next(4-bit NVFP4)MiaAI Lab 单用户 48.7 tok/s,八用户总计 162.9 ~130 GB
  4. GLM-5.3-Flash(2-bit EXL3)我的方案,或 Mia 方案的单机版 10 到 25 tok/s,262K 上下文,支持视觉 ~85 GB

第一个最简单,只要三行命令:

bash
1git clone <https://github.com/MiaAI-Lab/Unsloth-Qwen3.6-35b-NVFP4-DGX-Spark.git>
2cd Unsloth-Qwen3.6-35b-NVFP4-DGX-Spark
3./start.sh

跑起来之后,你就在 Spark 上得到了一个 OpenAI 风格的地址。把 Pi、opencode、Open WebUI 或者你用的任何工具指向它就行。

提示:

如果模型起不来,十有八九是内存不够。先关掉其他模型。一台 Spark 一次只能跑一个大模型。

第二步:两台 Spark

这是我最推荐的配置。就像我 8 月份说的:"2 台 DGX Spark,齐活了。"

EXO Labs - inline image

2 台 dgx spark

连接线。 你需要一根短 QSFP 线连接两个 QSFP 端口。下面这些都能用(线缆指南):

  • NVIDIA 原装: QSFP Cable 0.4 m for DGX Spark,99.99 美元。经常缺货。
  • NVIDIA 文档里提到的型号: Amphenol NJAAKK-N911 或 Luxshare LMTQF022-SD-R,0.5 米,约 159 到 187 美元。
  • 更便宜的 200G 选择: NVIDIA MCP1650-V00AE30,约 84 美元。

无论买哪种,链路都是 200 Gb/s。别用 USB-C 或 10 GbE 网口干这事,它们太慢了。

配置连接。 照着 NVIDIA 的 connect two Sparks playbook 做。它会为每个端口分配地址并检测速率。然后在第一台 Spark("head" 主节点)到第二台("worker" 工作节点)之间设置免密 SSH。所有双机方案都需要这一步。

我建议让 claude 或 gpt 帮你搞定这部分,省事多了。

选一个配置方案:

  1. Qwen3.8-Flash-Next(4-bit NVFP4)MiaAI Lab 开启 MTP 单用户 52.1 tok/s,最高 1M 上下文
  2. GLM-5.3-Flash(4-bit EXL3)MiaAI Lab 单用户 62.9 tok/s,四用户总计 146.5,850K 上下文
  3. DeepSeek-V4.1-Flash(2.9-bit EXL3)MiaAI Lab 跑代码 38.8 到 43.0 tok/s,600K 上下文
  4. GLM-5.3(3-bit EXL3,剪枝至 197 GB)我的模型卡片 能装下;速度还没测

大多数双机方案的操作都差不多:复制示例配置,填上两台 Spark 的地址,下载,启动。以 GLM-5.3-Flash 为例:

bash
1cp .env.example .env # 设置 HEAD_IP 和 WORKER_IP
2./download.sh
3./start.sh

注意:

把 Spark 连起来是能跑通的,但这也是目前软件生态最不成熟的地方。照着验证过的方案做,第一次最好留出一下午时间。

第三步:三台 Spark

三台 Spark 不需要交换机。每台 Spark 有两个 QSFP 端口,所以用线连成三角形就行:A 连 B,B 连 C,C 连 A。一共三根线。NVIDIA 支持这种 无交换机环形拓扑。

三台 Spark 给你约 384 GB 内存。这足以装下两台装不下的东西:

  • 原生精度的 DeepSeek-V4.1-Flash。 MiaAI Lab 的方案 能在三机三角形上跑到单用户 51.0 tok/s,256K 上下文。它还提供了一个 doctor 命令,会在启动前帮你检查 SSH、Docker 和网络链路。
  • 余量更大的 GLM-5.3-Flash。 双机 EXL3 方案 里有个 start-tp3.sh 是给三台机器用的。
  • 未剪枝的 GLM-5.3。 我的 293 GB 版本 大约需要三台 Spark 的内存。

DeepSeek 的方案很好地展示了更大规模集群的运行方式。它不是一条命令搞定,而是分几步:

bash
1./start.sh doctor # 检查 ssh、docker、链路、磁盘
2./start.sh share # 把模型文件夹共享给其他 Spark
3./start.sh serve # 先启动 worker,再启动 head

提示:

有些模型只能被 2 或 4 整除切分。买第三台之前,先确认方案里写了 "3x"。

第四步:四台 Spark

四台 Spark 提供约 512 GB 内存。有两种连接方式。

方案 A:用交换机(我用的方式)。 每台 Spark 用一根线连到 200 GbE 交换机,这样任意两台之间都只隔一跳。NVIDIA 提供了 对应的 playbook。大家常用的交换机有:

正如我 9 月份说的:"我觉得市面上没有比 4 台 Spark 加 MikroTik 交换机更香的组合了。"

EXO Labs - inline image

方案 B:不用交换机。 把四台连成环,每台 Spark 用线连到相邻的两台。不相邻的 Spark 通过中间那台通信。这样省了交换机,但配置更麻烦:

  • SparkRing 是一套完整的软件栈,用于无交换机双机组网和四台 Spark 环形组网。它目前还是 alpha 版本,记得锁定版本号。
  • 这个 GLM-5.3-Flash 方案可以在四台 Spark 组成的环网上运行,只需四根短 100G 线缆和一个打过补丁的 NCCL。典型速度约 45 tok/s,跑热后最高可达 100 左右。

选一个方案:

  • DeepSeek-V4.1-Flash(原生)MiaAI Lab, start-tp4.sh 单用户 45.4 tok/s,十六个用户总计 134.2,支持 1M 上下文
  • GLM-5.3-Flash(4-bit NVFP4)无交换机环网 典型约 45 tok/s,跑热后约 100

我自己用四台机器跑出的最好成绩是:借助 DFlash2 辅助模型,GLM-5.3-Flash 达到 118 tok/s;在短提示词下,DeepSeek-V4.1-Flash 跑到 83.8 至 95.3 tok/s(帖子)。

EXO Labs - inline image

每一步都能帮上忙的工具

  • \\sparkDash:\\ 一个网页仪表盘,在一个窗口里集中展示所有 Spark 的状态。包括 GPU、内存、网络和实时每秒 token 数。本指南中的不少速度数据就是用它测出来的。
  • \\NVIDIA 的 Spark playbooks:\\ 官方指南,涵盖 LM Studio、Ollama、vLLM、Spark 互联等等。
  • \\local-ai-registry:\\ 我整理的所有方案和跑过的全部速度测试。
  • \\b12x:\\ 很多 Spark 方案底层依赖的高速数学库。你不需要自己安装,方案脚本会搞定。详见下方进阶说明。
EXO Labs - inline image

总结

Spark 本质上是个“显存盒子”。它能装下大模型,用家用电安静地跑起来,而且每多加一台,性能就再上一个台阶。

如果你今天刚准备入坑:

  1. 先买一台,第一天就用 LM Studio 跑起 Qwen3.6-35B。
  2. 等你想要更高速度或同时跑多个 Agent 时,再切换到专用方案。
  3. 想跑 GLM-5.3-Flash 或 DeepSeek-V4.1-Flash 时,再买第二台 Spark 和连接线。对大多数人来说,到这里就够了。
  4. 只有当你想跑最大的模型,或者想同时跑好几个模型时,才需要加到三台或四台。

如果重来一次,我还会买吗?当然。而且要是从零开始,我第一天就会直接买两台。

进阶:Spark 互联是如何扩展性能的

日常使用 Spark 不需要了解这些。但如果你想知道那些数字是怎么来的,可以接着看。

生成速度接近线性扩展

模型每生成一个字,都要从显存中读取一次活跃权重。把模型拆分到多台 Spark 上,每台同时读取自己负责的那部分,读取速度就能叠加起来。

NVIDIA 实测过这个现象。从一台增加到两台再到四台 Spark,每个字的生成时间从 269 ms 降到 133 ms,再降到 72 ms。也就是两台提速 2.0 倍,四台提速 3.7 倍(NVIDIA 博客,表 3)。

EXO Labs - inline image

之所以能这么接近线性,是因为 ConnectX-7 链路延迟极低,而且 Spark 之间的数据交换可以直接在 GPU 代码内部完成。这篇关于 Mac 的解释更详细地说明了同样的原理。

每一层计算结束后,Spark 之间要交换各自的局部结果,下一层才能开始。每次交换的数据量不大,但每一层、每一个字都要做一次。每次交换都会消耗一点固定时间,这部分开销不会因为你加了更多 Spark 而减少。

  • 链路带宽是 200 Gb/s,约 25 GB/s。 这大概是 Spark 自身显存速度的十分之一。不过没关系,因为交换的数据量很小。
  • 它使用了 RDMA。 数据直接从一台 Spark 的显存传到另一台,不需要 CPU 中转拷贝。每个 QSFP 端口会被识别为两个 100 Gb/s 的通道,软件必须同时用上两者才能跑满 200(详情)。NVIDIA 专门处理这件事的库 NCCL 会自动搞定。
  • 读取的扩展性不如生成。 在同一个 NVIDIA 测试中,读取 32K token 的提示词,两台 Spark 提速 1.6 倍,四台提速 2.1 倍。因为读取阶段每一步在 Spark 之间搬运的数据量大得多。
  • 环形拓扑会增加跳数。 在三台 Spark 组成的三角形中,每台都与其他两台直连。而在四台 Spark 的环形中,有些节点要通过邻居转发。用交换机的话,任意两台之间都只隔一跳。SparkRing 自己写了一套交换代码(SIRCL)来让环形组网跑得更快。
  • 混合专家(MoE)模型还有第二重切分。 方案通常会把张量并行和“专家并行”结合起来,让不同的 Spark 负责不同的专家。

另外两种提速思路

  • 多用户并发。 Spark 每一步只读一次模型,然后用这次读取的结果同时回复所有人。所以总吞吐量的增长速度远快于单用户速度。
  • 投机解码模型提前猜词。 MTP、DSpark 和 DFlash2 都是这个路子。用一个又快又小的辅助模型先草拟几个词,再由大模型一次性校验。猜对了,花一份算力就能出好几个词。这就是为什么在同一个方案里,GLM-5.3-Flash 生成散文只有 27 tok/s,而输出结构化内容时能飙到 65。
EXO Labs - inline image

单台 Spark 上以 4 bit 运行的 Qwen3.6-35B-A3B,开启了加速辅助模型。来源:local-ai-registry 速度测试,2026 年 8 月。

云端 AI 和本地 AI 是两码事

云端 GPU 比 Spark 快得多。但云厂商会把同一块 GPU 分给很多用户,他们要在“每 token 成本”和“每用户速度”之间找平衡点。大多数时候他们选成本,所以每个用户分到的每秒 token 数远低于硬件全力服务一个人时的水平。InferenceX 把 Qwen3.8-Flash-Next 的这种权衡画成了图表。

在家里,这个取舍根本不存在。机器是你自己的,你可以把全部算力砸给一个人。这就是为什么 Spark 用起来感觉跟云服务一样快,尽管硬件本身并没有那么强。

sm_121:为什么 Spark 的软件生态自成一派

每款 NVIDIA GPU 都有一个“计算能力”编号,告诉软件它支持哪些指令。Spark 的 GPU 是 12.1,即 sm_121(Simon Willison 的上手体验)。RTX 5090 和 RTX PRO 6000 是 sm_120,算是近亲。而 NVIDIA 的数据中心芯片 B200 和 B300 分别是 sm_100 和 sm_103,属于另一个家族。

这很关键,因为最快的 AI 代码往往是一次针对一个架构家族写的。Spark 刚发布时,很多代码要么跑不起来,要么跑得很慢(NVIDIA 论坛、vLLM issue)。

解决办法就是大家开始为 Spark 写专属代码:

  • Local Inference Lab 开发的 b12x 是一个面向 sm_120 和 sm_121 的 kernel 库,支持 DGX Spark、RTX Spark、RTX 5090 和 RTX PRO 6000。它涵盖了 4-bit 矩阵运算(NVFP4、MXFP4)、DeepSeek 风格模型的 attention、混合专家层以及高速模型加载器。通过 pip install b12x 安装,vLLM 方案可以用 flashinfer_b12x 之类的参数开启它。Qwen3.6-35B 方案就用到了它。
  • SparkInfer 是 b12x 的曾用名。旧链接现在会跳转到 b12x。我的单台 Spark DeepSeek 方案在读取和生成阶段都用了它的 attention 代码。别把它和 gittensor 的 sparkinfer 搞混了,后者是专为 RTX 显卡(仅 sm_120)打造的独立运行时。
  • ExLlamaV3 是用来跑 EXL3 模型的引擎。MiaAI Lab 维护着一个分支,加入了 Arm(GB10)移植和辅助模型支持。
  • lil 是 Local Inference Lab 的启动器。它会读取机器的硬件布局,为单台 Spark 或多台互联的 Spark 自动生成正确的 vLLM 命令。

进阶:把 Spark 当研究机器用

这是我完全没预料到的部分。Spark 生成速度慢,但读取速度非常强。而对模型做的大部分研究工作,其实都是读取。

Spark 最擅长的事:prefill

模型要干两件不同的活:

  • Prefill 是读取你的提示词。整个提示词一次性处理完,瓶颈在于纯算力。GB10 在这方面绰绰有余:最高支持 1 petaflop 的 4-bit 算力。
  • Decode 是逐字生成回答。每生成一个字都要重新从显存读一遍模型,所以瓶颈在显存速度。这正是 Spark 的短板。

因此,Spark 读取提示词的速度是生成速度的 13 到 41 倍:

EXO Labs - inline image

四台 Spark 上的 DeepSeek-V4.1-Flash:读取 32K token 提示词时达 3,360 tok/s,131K 时为 3,273,而生成速度维持在 70 到 95 左右。(9 月 20 日)帖子

为什么这正好契合研究需求

我在压缩模型时做的几乎所有工作都是读取,而不是生成:

  • 量化(降低 bit 数)。 制作 EXL3 和 NVFP4 版本时,要把样本文本喂给模型,测量每一层在不同位宽下的精度损失。这是读取。
  • 剪枝(减少专家数)。 REAP 会让样本文本跑过混合专家模型,记录每个专家的使用频率,然后砍掉最不常用的。我的 197 GB GLM-5.3 保留了 256 个专家中的 168 个。这也是读取。
  • 质量检验。 Top-1 一致性和 KL 散度,都是让原始模型和小模型读同一段文本,再比较它们的预测结果。又是读取。
  • 长上下文测试。 验证模型能不能在 262,000 个 token 里找到某个事实,基本就是一次超长的读取。

正是出于这个原因,我自己的工作流程也变了。“我现在所有的剪枝 / exl3 / 基准测试都在 DGX Spark 上跑,RTX 6000 留给推理。虽然慢一些,但 2-3 天对比 12 小时完全可以接受。” 那个下载量突破 10 万的单台 Spark DeepSeek 模型,就是用 REAP 剪枝、EXL3 压缩出来的。

这与研究目标如何契合

如果你的目标是摸清一个模型的门道,Spark 非常合适:

  • 它装得下大模型。 用一两台机器就能测量 300B 级别的模型,不用去租集群。
  • 插着家用电能连跑好几天。 长时间的校准和评测任务可以无人值守运行,不用担心电费爆炸。
  • 解放你的高性能硬件。 我的 GPU 用来对外提供服务,Spark 则负责那些慢工出细活的活儿。
  • 可以用自己的数据做校准。 我用自己的 Agent 会话记录和写作内容来剪枝模型,这些数据是私密的,一直留在我的书桌上。
  • 它是研究类 Agent 的好宿主。 我曾经让四个 Agent 同时在 Spark 上做研究任务,每个大约 120 tok/s。
  • 训练在多 Spark 间扩展性很好。 在 NVIDIA 的测试中,微调在两台 Spark 上快了 2 倍,四台上快了 4 倍,因为 Spark 每一步只同步一次(表 5)。NVIDIA 的 playbooks 里有 PyTorch 微调指南。我自己还没亲自测过训练耗时。

进阶:GB10、GB300,以及把 Spark 当扩展显存用

“GB”代表 Grace Blackwell:一颗 Arm CPU 和一块 Blackwell GPU 封装在一起,通过名为 NVLink-C2C 的高速链路共享显存。Spark 里的 GB10 是这个理念的最小实现,搭载了一颗与联发科合作打造的 20 核 Arm CPU。

GB300 则是数据中心版本:Grace CPU 搭配 Blackwell Ultra(B300)GPU。它用在 NVIDIA 的 GB300 NVL72 机柜里,单颗 GB300 也能驱动 DGX Station。GB10 并不是从 GB300 上切下来的一块,而是同一套设计的小型化版本,所以同样的软件能在两者上运行。

EXO Labs - inline image

结语

DGX Spark 已经在我家里占据了一席之地,而且它的支持生态、实用性和能力每天都在变强。

参考资料与延伸阅读

一键保存

使用 YouMind AI 深度阅读爆款文章

保存原文、追问细节、总结观点,并在一个 AI 工作空间里把爆款文章沉淀成可复用笔记。

了解 YouMind
写给创作者

把你的 Markdown 变成干净的 𝕏 文章

图片上传、表格、代码块,往 𝕏 上手动重排太痛苦。YouMind 把整篇 Markdown 一键转成干净、可直接发布的 𝕏 文章草稿。

试试 Markdown 转 𝕏

更多可拆解样本

近期爆款文章

探索更多爆款文章