Cerebras如何把3万亿参数模型铺进59片晶圆芯片
面对万亿参数模型,推理系统首先要解决的不是算力,而是“权重放在哪里”。Cerebras在一篇技术文章中,以约3万亿参数的开源模型Kimi K3为例,解释其如何把模型部署到多片WSE-3T晶圆级处理器上。需要说明的是,文中的性能与基准对比来自Cerebras对示例模型的描述,并非独立评测结论。
核心方法:按层拆分模型
单片WSE-3T拥有44 GB片上内存,但万亿参数模型的权重规模达到数TB,显然无法放入一片芯片。Cerebras采用4比特权重量化,并按模型层的大小估算存储需求。以Kimi K3为例,3万亿参数平均分布到93层后,每层约需16 GB存储空间。
这种估算并不意味着所有层都能以完全相同的方式部署。Kimi K3包含69个线性注意力层和24个稠密层。线性注意力层只需为每个请求保存较小、固定规模的状态,因此一片44 GB芯片可以容纳两层。稠密注意力层则需要保存随上下文长度增长的KV缓存,所以通常一片芯片只放一层,并把剩余空间留给缓存。按照这套示例映射,69个线性层需要35片芯片,24个稠密层需要24片,总计59片。
片间传输的重点是激活值
模型权重被固定在对应芯片上,推理请求则像经过装配线一样依次流过各个阶段。前一阶段计算出的激活值通过RDMA over Ethernet传给下一阶段,文中给出的单跳延迟约为2微秒。由于多数情况下完整层可以直接放在一片芯片内,权重无需在芯片之间反复搬运,通信主要集中在激活值上。
并发请求填满流水线
流水线并不意味着系统一次只能处理一个请求。不同请求可以同时处于不同阶段:一个请求在后段计算时,另一个请求可在中段处理,第三个请求则进入前段。生产系统还会把更细的计算单元划分为多个阶段,并以微批次方式处理一小组请求。
微批次越小,单个请求的响应路径通常越短;微批次越大,整体吞吐量可能更高。与此同时,稠密层芯片上为KV缓存预留的空间决定了可同时在途的请求数量。也就是说,模型部署不仅是权重容量问题,还要在权重、缓存、并发度和延迟之间做取舍。
意义与局限
这套设计展示了晶圆级系统处理超大模型的一种思路:通过增加芯片数量扩展内存与计算资源,通过流水线隐藏阶段等待,再用片上内存减少权重移动。评价这类系统时,单纯比较批量大小或峰值吞吐并不充分,还应关注相同生成速度下的单位功耗令牌吞吐量。
不过,文章使用了假设的平均请求长度、量化配置和特定模型结构,实际效果仍会受到上下文长度、请求分布、模型实现及通信调度影响。因此,59片这一数字更适合作为部署示例,而不是所有3万亿参数模型的通用答案。
来源:Hacker News
评论
正在确认登录状态……
正在加载评论……