RTX 3060 跑 400GB 的 DeepSeek:prefill 提速 10 倍,评论区先对起了账
有人用 Betelgeuse 在 12GB 显卡加 16GB 内存上跑 DeepSeek V4.1 Flash,prefill 从 3 tok/s 提到 62 tok/s。但帖子里的量化版本和模型体积对不上,作者说是 Claude 写错了。
一张 RTX 3060 12GB,16GB 单通道 DDR4 内存,跑 DeepSeek V4.1 Flash,decode 18 到 19 tok/s。帖子发在 r/LocalLLaMA,作者 zyxciss。
先补背景。DeepSeek 这类 MoE 模型,专家层多,整体权重远超单卡显存。out-of-core 的做法是把大部分专家权重放在 SSD 或内存里,用到哪个加载哪个。麻烦出在 prefill。你发一段 prompt,模型要处理所有 token,batch 内不同 token 激活的专家合起来几乎覆盖全部层。标准实现按顺序从硬盘流式读,GPU 干等,首 token 时间能拖到几十秒。之前对这个路线的普遍印象是:能跑,但没法交互。
zyxciss 说他们在 Betelgeuse 里把这个问题修了,做法有三点:
- 每层维护 20 个常驻槽位,5 个在显存,15 个在内存,路由互不干扰。
- prefill 不切成 3 token 的小批次,按 16 token 一批走,内存里的专家通过 PCIe 并行流入执行环。
- 第一遍跑完后,把 prompt 和早期生成最常用的 top-5 专家物理换进显存热槽,不改变逻辑路由。
结果 warm prefill 从 3 到 6 tok/s 提到 61.80 tok/s,TTFT 基本即时。decode 稳定在 18 到 19 tok/s,磁盘读降到 0.00%。他们还用了 DeepSeek 原生的 DSpark drafter,p_min 0.50,结构化代码上接受率 80% 到 90%。
配置细节:Q8_XL expert backbone 加 IQ4_NL Engram 表,DeepSWE 72.3 分。110GB 的 Engram 表全放 NVMe,只在第 1 和第 14 层激活,每 token 碰 48 行约 192KB,用一个 2MB 的显存缓冲承接,不占内存。系统是 CachyOS,跑在 MemoryMax=12G 的 cgroup 里,0 swap。模型总大小 305.6+110.6GB。发帖人还提了一句,换双通道 16GB 内存,PP 能从 61 tok/s 到 120 tok/s。

帖子给了一张 Betelgeuse 和 Strata 的对比表,挑关键几行:
| 指标 | Betelgeuse | Strata |
|---|---|---|
| GPU | RTX 3060 12GB | RTX 5070 12GB / RTX 3060 12GB / 4× R9700 |
| 内存 | 16GB | 64GB(5070)/ 46GB(3060) |
| 存储 | 1.7 GB/s NVMe | 3.6 GB/s NVMe(5070) |
| Warm PP | 61.80 tok/s | 121 tok/s(4K)到 231 tok/s(8K),5070 |
| PP(3060) | 61.80 tok/s | 149 tok/s(8K) |
| Warm Decode | 18.15–18.92 tok/s | 8–10 tok/s(3060 + 64GB) |
| Decode 峰值 | 27.92 tok/s | 9.9 tok/s(代码) |
| 量化 | Q8_XL(UD-3.1) | GSQ-RCO IQ2_XS |
两边测试条件不完全对齐,Strata 有些数字是 RTX 5070 跑出来的,对比只能看个大概。
帖子发出来,评论区先没聊技术,先对起了账。
有网友 bobaburger 指出,GitHub readme 上写的是 UD-Q2_K_XL backbone 加 IQ4_NL Engram,18 tok/s,帖子里说 Q8,结尾又提 Q4,到底哪个是准的。zyxciss 回复说,是 Claude 弄错了。
另一位 Skyline34rGt 说得更直接:300GB 加 100GB 的 ngrams 规模,对应的是 iq2xxs 加 iq4 ngrams,不是 Q8 或 Q4。按他的说法,Q4 和 Q8 都应该超过 500GB,还要另算 ngrams。
这就有点尴尬。帖子标题和正文反复强调 Q8_XL,但按模型体积推算,更像是低比特量化。发帖人把锅甩给了 Claude,没给进一步解释。
其他跟帖里,有人问 context 长度,没得到回复。有人问 62 tok/s 的 prefill 算不算可用。有人问双 GPU 支持,有人问 3080 16GB 和 5070 Ti 能不能跑。还有人吐槽链接 404,zyxciss 说修好了。另外他提到 bel-cli 末尾会循环输出,是 bug,bel-server 正常。
有个叫 AvidCyclist250 的网友分享了自己的体验:4080 加 64GB 内存,用 Strata 跑 deepseek q2,16 t/s,但 NVMe 持续高负载,他不喜欢,换回了 qwen 的量化版。
回到这件事本身。out-of-core MoE 的 prefill 优化是真问题,Betelgeuse 提的三点做法也有具体工程细节。但一篇技术帖,最关键的量化版本被网友用算术当场质疑,作者只用一句“Claude 弄错了”带过,这让人没法直接采信那些速度数字。
GitHub 链接在帖子末尾,想试的人可以先看 readme 里的实际配置,再决定要不要花时间。
发布时间: 2026-11-08 03:58