一、论文信息
- 论文题目:Fast Inference of Mixture-of-Experts Language Models with Offloading
- 论文链接:arxiv.org/abs/2312.17…
- Github:github.com/dvmazur/mix…
二、概要
文章讨论了在加速器内存有限的消费者硬件上运行大型混合专家(MoE)语言模型的问题。作者提出了一种新的策略,通过利用MoE语言模型如何在令牌之间访问其专家的规律来加速模型参数的卸载。他们设计了一种特定于moe的卸载策略,该策略使用LRU缓存来减少gpu与ram的通信,并提前猜测需要哪些专家来重叠专家加载与计算。作者通过在桌面硬件和免费层Google Colab实例上运行混合量化的Mixtral-8x7B来证明其策略的有效性。本文还提供了MoE语言模型、llm的训练后量化和参数卸载推理的背景信息。
要点:
- 大型语言模型(llm)需要高端gpu来进行高效的推理。稀疏混合专家(MoE)模型可以更快地生成令牌,但具有更大的模型大小。在加速器内存有限的消费者硬件上运行MoE模型是具有挑战性的。
- 作者提出了一种加速MoE模型参数卸载的策略。
- 该策略使用LRU缓存来减少gpu与ram的通信,并提前猜测需要哪些专家。
- 建议的策略允许在桌面硬件和免费层Google Colab实例上运行混合量化的Mixtral-8x7B。
三、讨论
- 专家本地性和LRU缓存如何影响Mixtral-8x7B模型的推理速度?
专家本地性和LRU缓存可以减少Mixtral-8x7B模型的推理时间。通过将专家参数存储在GPU内存中,专家本地性可以减少专家参数在主机和设备之间的传输时间。LRU缓存可以减少专家参数在GPU内存中的加载时间,因为它将最近使用的专家参数存储在缓存中,以便快速访问。实验结果表明,使用专家本地性和LRU缓存可以将推理时间缩短到原来的1/3左右。
- 如何在Mixtral-8x7B模型中实现实际卸载性能?
在Mixtral-8x7B模型中实现实际卸载性能,需要采用专家本地性和LRU缓存、推测性专家加载等技术。具体来说,专家本地性是指将专家参数存储在GPU设备内存中,以减少数据传输延迟;LRU缓存是指使用最近最少使用(LRU)缓存策略来缓存专家参数,以减少数据传输次数;推测性专家加载是指在系统完成当前层的专家加载后,立即触发推测性专家加载,以提前加载下一层可能使用的专家参数。这些技术可以显著提高Mixtral-8x7B模型的实际卸载性能。