fiddler - ICLR 2025 详细分析

Kamahori K, Gu Y, Zhu K, et al. Fiddler: Cpu-gpu orchestration for fast inference of mixture-of-experts models[J]. arXiv preprint arXiv:2402.07033, 2024.
主要内容

CPU、GPU处理延迟+传输延迟 aware的MoE CPU卸载系统
优点
支持了beam search,首个同时考虑传输延迟和CPU、GPU处理延迟的专家卸载系统(因为24年就发arxiv了)
缺点
代码为简单的理论实现,很多细节没有做好。
- 不考虑Expert的分组处理模式
- 仅支持Mixtral8x7B的简单专家层级结构(每个MLP层必须有专家,且专家大小必须相同),对存在Shared Expert且存在无专家层的的DeepSeek完全无法处理
- 搜索算法过于暴力
1
2
3
4
5
6
7
8
9
10for config in range(1 << len(experts)):
sum_cost = 0
for i_expert in range(len(experts)):
if (config >> i_expert) & 1:
sum_cost += cost_per_expert[i_expert, 0]
else:
sum_cost += cost_per_expert[i_expert, 1]
if sum_cost < best_cost:
best_cost = sum_cost
best_config = config - 性能甚至无法做到优于torch的纯CPU环境