alitrack

一张4090,跑起了671B大模型。清华团队做到了

2026 年,要正经部署一个 DeepSeek-V3(671B 参数),行业标配是 8 张 H100,差不多 20 万美元的硬件。

有个开源项目偏不信邪。

它在一张 RTX 4080(16GB 显存)加两颗 Xeon CPU 的机器上,跑起了 DeepSeek-V3 的完整推理。Prefill 阶段 286 tokens/s,Decode 超过 30 tokens/s,精度损失不到 0.5%。

这个项目叫 KTransformers,清华大学 MADSys 实验室和趋境科技联合开发的。论文入选了系统领域顶会 SOSP 2025,GitHub 18.9K Stars。DeepSeek-V4 发布当天就支持,GLM-5.2、Kimi-K2.5、MiniMax-M3 都是 Day0 适配。

我花了两天读论文、翻代码、查 benchmark,把最硬核的部分拆出来讲清楚。

● ● ●

为什么 MoE 模型天然适合 CPU+GPU?

Mixture-of-Experts 模型有个特点:参数总量巨大,但每次推理只激活一小部分专家。

DeepSeek-V3 671B 参数,单次前向传播只激活约 37B。这意味着 600 多 B 参数躺在显存里,但大部分时间用不到。

KTransformers 的思路很直接:把这 600 多 B "冷"专家的权重放 CPU 内存(DDR5 便宜量大),只把注意力层、共享专家、高频路由专家留在 GPU 显存里。计算直接在 CPU 上完成,不需要把权重搬来搬去。

关键不在"想到",在于"做到"——CPU 算矩阵乘法天然慢,调度不好就变成 GPU 等 CPU、CPU 等 GPU 的死循环。

● ● ●

三件事,让 CPU 和 GPU 真的一起干活了

第一件:AMX 内核,把 CPU 算力榨到极限。

Intel 第四代 Xeon(Sapphire Rapids)有套叫 AMX 的矩阵加速指令集。KTransformers 写了一套针对 AMX 高度优化的计算核——tile 精确定长 L2 缓存、纵向分片横向分块、动态切换 AMX/AVX-512。

效果:单路 Xeon 持续吞吐 21.3 TFLOPS,比 PyTorch 原生快 3.98 倍。对比 AVX-512 快了 8 倍。

第二件:CUDA Graph + 异步调度,消除 GPU 空闲等待。

传统 CPU-GPU 协同有个致命问题:每层 MoE 要同步两次——GPU 发激活给 CPU、CPU 算完专家回 GPU。每次同步都有内核发射延迟,加起来占 GPU 总执行时间的 20% 以上。

KTransformers 把整个 decode 路径封装进单个 CUDA Graph。CPU 控制线程异步提交专家计算任务,GPU 流内回调释放等待。内核发射开销降到接近零,解码速度提升 23%。

第三件:Expert Deferral,打破了 MoE 的层级依赖。

这是最精彩的创新。

Expert Deferral 原理

Expert Deferral 原理

标准 MoE 推理里,GPU 算完注意力 → GPU 等 CPU 算专家 → CPU 等 GPU 发下一层。两边交替空闲。

KTransformers 利用了 Transformer 残差连接的特性——中间层的结果稍微延迟到达,模型几乎不受影响。它把每层的 8 个路由专家分成两组:5 个"即时专家"正常输出到下一层,3 个"延迟专家"推到下下层再合并。

这样 GPU 在计算第 K 层的注意力时,CPU 在并行完成第 K-1 层的延迟专家——两侧都不闲着。

单层执行时间缩短 26%,端到端解码吞吐提升 33%。LiveBench 验证精度变化不到 0.5%,接近无损。对比直接丢弃专家的暴力的方案,Deferral 明显更优。

这就是 KTransformers 跑赢 Llama.cpp 1.66–2.56 倍的真正原因。

● ● ●

不只能推理,还能微调

KTransformers 的 SFT 能力被很多人忽略了。

它接入了 LLaMA-Factory,通过 FSDP2 + INT8 量化实现 CPU/GPU 混合微调。在 4 张 RTX 4090(每张 16GB,合计 64GB 显存)上,DeepSeek-V3 的训练速度达到 3.7 it/s,比 ZeRO-Offload 快 6 到 12 倍。

Qwen3-30B-A3B 只需要一张 4090,训练速度 8+ it/s。

关键好处是数据全程本地。模型权重、训练数据、计算都在自己的机器上,不需要上传到任何云平台。

● ● ●

生态:SGLang 合入 + Day0 模型支持

2025 年 10 月,KTransformers 作为算子库合入了 SGLang 主分支。

这意味着 SGLang 的多 GPU 张量并行和 KTransformers 的 CPU/GPU 混合推理融合到了一起。8 张 L20 + Xeon Gold 跑 DeepSeek-R1-0528,8 路并发总吞吐 227.85 tokens/s——每路平均接近 20 tokens/s。

模型支持方面,新模型发布首日即适配:DeepSeek-V4-Flash、GLM-5.2、Kimi-K2.5、MiniMax-M3、Qwen3-235B 都在支持列表里。

● ● ●

有什么局限?

不是所有机器都能用。AMX 内核需要 Sapphire Rapids 或更新的 Xeon,消费级 Core i9 只能用 AVX2,性能打折严重。运行 671B 模型需要 500GB+ DDR5 内存,双路服务器也不便宜。

社区反馈量化版本偶有拼写错误和质量下降。SGLang 集成还在完善中,多 GPU 场景下偶有 bug。

但方向是对的。当 MoE 成为大模型默认架构,CPU+GPU 异构推理不是权宜之计,是必然路径。

● ● ●

一个周末能跑起来吗?

可以。GitHub kvcache-ai/ktransformers,Apache 2.0 协议。有 Docker 镜像一键部署,有 SGLang 集成的 OpenAI 兼容 API。

需要:Linux x86_64、CUDA 12.1+、Sapphire Rapids Xeon 或至少支持 AVX2 的 CPU、足够 DDR5 内存、一张 NVIDIA 显卡。

论文:madsys.cs.tsinghua.edu.cn/publication/ktransformers-unleashing-the-full-potential-of-cpu/gpu-hybrid-inference-for-moe-models/SOSP25-chen.pdf

LMSys 合作博客:lmsys.org/blog/2025-10-22-KTransformers

你试过在本地跑大模型吗?被显存卡过几次?评论区聊聊。