港中文OD-MoE取消专家缓存,Mixtral解码达全量GPU的75%,工人卡不到1GB

OD-MoE: On-Demand Expert Loading for Cacheless Edge-Distributed MoE Inference

Liujianfu Wang, Yuyang Du, Yuchen Pan, Soung Chang Liew, Jiacheng Liu, Kexin Chen

cs.DC

2025-12-04

港中文用量化影子模型提前多预测几层专家路由,十节点上按需加载、用完即丢,Mixtral解码3.69 token/s,约等于全量缓存的75%,工人卡显存不到1GB。

这篇在解决什么

边缘上跑MoE,显存是硬约束。专家offload把多数参数放CPU,GPU只缓存「可能用到」的热专家,看起来省了,实际为缓存预留的那块GPU往往比稠密模型还浪费,而且PCIe搬错一次就要停下来重载。EdgeMoE、HOBBIT、Mixtral-Offloading靠量化缩小搬运量,AdapMoE甚至跳过没缓存的专家,精度先伤一刀。

OD-MoE的目标更狠:GPU上不长期缓存任何专家,用时加载、算完立刻驱逐。这要求两件事同时成立,预测得极准,以及加载和计算能在多机上错开。

方法

系统拆成三类节点。主节点放注意力、门控、归一化等非专家部分;影子节点跑一份量化Mixtral,当作更快的仿真器;工人节点按预测把专家搬进GPU并计算。十节点测试床是1个主节点(一张RTX 3090)+1个影子(两张3090)+8个工人(各一张3090),1Gbps以太网。Mixtral-8×7B top-2,工人按组大小2分成4组,一轮里一组在算当前层,另外三组并行加载后面三层。

预测叫Scaled Emulative Prediction(SEP):影子模型比全精度模型跑得快,它已经展开的未来层路由,直接当作全精度模型的前瞻。量化会在自回归里累积误差,所以要把影子的token和KV cache定期对齐回全精度。每步都对齐时,FP16影子召回99.94%,INT8 97.34%,NF4 95.67%;不对齐的话,256个输出token后召回会掉到大约30%。对齐会让影子晚出发,前几层暂时没有预测、退回I/O等待。3090工人上每步对齐最快;工人换成3080时,KV对齐周期改成4、token仍每步对齐更快。对照里AdapMoE召回86%,DAOP 84%,HOBBIT跨最多四层平均91%。

预填阶段不做预测。16 token短输入平均激活8个专家里的7.6个,128 token有99.8%概率激活全部8个,预测没有意义。八个工人各扛一层里的一个专家,大batch切成mini-batch,让计算和以太网传embedding流水起来。

结果

速度对照在八卡3090服务器上复现基线(offload系统只用其中一卡)。解码是主指标,四组(输入,输出)长度平均:

系统解码 token/s总吞吐 token/sGPU显存
Transformers全缓存4.89004.8425180 GB
OD-MoE3.6925(75.51%)3.370060 GB
AdapMoE3.13003.03508 GB
Mixtral-Offloading2.23752.172511 GB
llama.cpp0.82250.79750(CPU)

相对Mixtral-Offloading、MoE-Infinity(0.6875)、HOBBIT(0.7850)、AdapMoE,解码分别是1.65×、5.37×、4.70×、1.18×。TTFT平均2244ms,比Mixtral-Offloading的1845ms和AdapMoE的1387ms慢,量化基线靠压缩搬运赢了首包,但答题质量掉了:AdapMoE的MMLU 48.60%、GSM8k 22%,HOBBIT的GSM8k 35%;OD-MoE与全精度Transformers同权,MMLU 70.34%、Hellaswag 76.25%、GSM8k 64.14%。60GB拆开是主节点7GB、影子45GB、八个工人各约1GB。

为什么重要

「缓存热专家」这条路在边缘上既吃显存又吃不准。OD-MoE证明,预测准到99%以上时,缓存可以丢掉,工人卡不到1GB就能进流水线。这是给一堆入门级GPU组网用的,不是给单卡笔记本用的。影子那两张3090、45GB是隐藏成本,账不能只算工人。

局限与存疑

测试床是1Gbps有线局域网,不是真无线,延迟模型跟Wi-Fi/蜂窝对不上。影子节点两张3090加45GB,系统总显存60GB,对「边缘」偏奢侈;工人不到1GB成立,整机并不穷。预填TTFT明显慢于量化offload。对齐频率依赖算力和PCIe比例,换卡要重扫。GitHub链在双盲阶段是占位。没有在真实IoT(路由器、摄像头)上跑,「不到1GB就能上IoT」还是外推。

术语

原文与代码

社区讨论

相关论文

全部论文解读