权重卸载(Weight Offloading)

AI TERM术语词条

Weight Offloading

技术原理 显存优化本地部署分层加载推理性能

术语释义

权重卸载把暂时用不到的模型参数留在内存或外存,按层调入显存参与计算,用带宽换显存以运行超出显存容量的模型。

显存装不下整个模型时,一个直接的办法是不要求所有参数同时驻留显存:按层执行,用到哪层就把那层权重搬进来,用完再释放。这就是权重卸载,它让消费级显卡也能运行更大的模型,代价是每一步都要搬运参数。

实现方式

  • 按层调度:前向逐层加载,配合预取把下一层提前搬入,尽量与当前层的计算重叠。
  • 常驻与流动:把频繁使用的嵌入层与输出层常驻显存,只把中间层设为可卸载,减少反复搬运。
  • 与量化配合:以低精度存放可以减少搬运量,但反量化会带来额外计算,需要权衡。
  • 固态盘参与:内存也不够时可把权重放到固态盘,不过延迟更高,只适合交互不密集的场景。
  • 固定显存预算:部分实现允许指定显存上限,由框架自动决定哪些层常驻、哪些层流动。

取舍与瓶颈

卸载的瓶颈是传输带宽与预取是否成功:预取被计算打断或层间依赖串行时,显卡大部分时间在等数据,吞吐可能明显下降。批量增大能摊薄搬运成本,但激活与缓存的显存占用同步上升,可能把省下来的空间又吃掉。它适合显存受限但能接受较慢速度的本地场景,高并发服务通常改用更小的模型或更激进的量化。还要注意主机内存本身必须放得下完整权重,否则会退化成频繁换页,延迟进一步恶化。参数搬运对延迟的影响是刚性的:如果每层权重需要可观的时间才能搬完,层数就直接决定了单次前向的下限,再优化计算也无法突破。在多卡机器上把卸载与张量并行混用要格外小心,两者都在抢占互联带宽,叠加后可能比单纯卸载更慢。

与相近技术的区别

  • 与量化:量化降低参数本身的位宽,卸载改变参数的驻留位置,两者常一起使用以同时降低显存占用与搬运量。
  • 与张量并行:张量并行把模型分散到多张卡并常驻显存,需要多卡与高速互联;卸载只用单卡加主机内存。
  • 与缓存管理:缓存管理优化的是推理过程中动态增长的键值缓存,卸载针对的是静态的模型权重。
  • 与模型裁剪:裁剪通过减少参数量来适配显存,卸载不改变模型本身,只改变参数的加载时机。

判断是否值得用卸载,可以先测量单位时间能搬运多少参数,再与目标吞吐要求对比。若搬运带宽成为硬约束,缩小模型或降低精度通常比继续优化调度更有效。评估时至少记录首字延迟与逐字延迟两个指标,卸载对二者的影响并不相同。

查看全部 218 条 →
共 9 条