关键词:MoE、CPU-GPU Scheduling、Inference、Cache Management
混合专家(MoE)架构因其能够在不按比例增加计算量的情况下提升模型容量而展现出显著的优势。然而,大型 MoE 模型尺寸较大,通常需要在资源受限的平台上进行专家卸载(expert offloading),从而产生显著的开销。
为了应对这一挑战,研究者提出了利用 CPU 计算来减少专家加载开销的混合 CPU-GPU 推理方法。但这种方法面临两大主要挑战:
- 一方面,MoE 模型中专家激活模式高度不稳定,使得现有工作中基于固定映射策略的方法效率低下;
- 另一方面,由于专家尺寸、结构多样以及工作负载分布不均等原因,MoE 的混合 CPU-GPU 调度本质上非常复杂。
为解决这些挑战,本文提出 HybriMoE,一种通过新颖的 CPU-GPU 调度和缓存管理系统来提高资源利用率的混合 CPU-GPU 推理框架。HybriMoE 引入了:
- 动态的层内调度策略以平衡 CPU 和 GPU 之间的工作负载
- 基于影响的层间预取算法
- 基于评分的缓存算法以缓解专家激活的不稳定性
我们在 kTransformers 框架之上实现了 HybriMoE,并在三个广泛使用的基于 MoE 的大型语言模型(LLMs)上进行了评估。实验结果表明,与最先进的混合 MoE 推理框架相比,HybriMoE 在预填充阶段平均加速了 1.33 倍,在解码阶段平均加速了 1.70 倍,代码开源!
最新更新:
DeepSeek-V3 模型结果:
加群请在 NeuralTalk 公众号后台回复:我要加群不加不行
一、介绍
混合专家(MoE)作为一种有前景的方案,能够在不牺牲模型性能的情况下提升大型语言模型(LLMs)的计算效率。通过使用动态路由函数将输入标记分配给一组专家,MoE 能够在不按比例增加计算需求的情况下扩展 LLM 参数和能力。
尽管具有这些优势,但 MoE 引入了显著的内存需求,这对部署在内存资源有限的边缘设备上构成了特别挑战。
为缓解这一问题,专家卸载技术将专家权重存储在辅助存储(如 CPU 内存或 SSD)中,并通过 PCIE 按需加载到 GPU 内存中。在这些卸载场景下,主要瓶颈变为与按需加载相关的开销,这由大规模通信和有限带宽驱动。为缓解这一问题,一些研究探索了量化、预取或缓存技术以减少延迟。
其他卸载场景的先前工作进一步探索了利用 CPU 计算来减少内存传输频率的技术。例如,PowerInfer 和 Caraserve 通过利用推理期间的激活模式或优化适配器使用取得了显著成功。同样,专门针对 MoE 的卸载方法,包括 Fiddler 和 kTransformers,利用 CPU 在缓存未命中时执行专家层。
如图 1 所示,当发生缓存未命中时,CPU 处理相应的专家计算,而不是将层从内存传输到 GPU,从而减少数据传输开销。尽管 CPU 计算对于传统推理任务是有效的,但 MoE 模型呈现出独特的挑战,使其应用变得复杂。
MoE 模型中的专家激活通常较少偏斜且在迭代间表现出显著变化,使得预测哪些专家将被激活变得困难。
这种动态行为使得在 CPU 和 GPU 之间平衡工作负载变得复杂,因为静态任务分配策略无法适应实时工作负载分布的变化。
然而,现有解决方案依赖基于历史激活频率的固定映射策略,忽视了 MoE 推理的动态和不可预测性。这些限制导致资源利用率低下和推理延迟增加,如图 1(b)和(c)所示。
鉴于这些挑战和机遇,我们提出了 HybriMoE,一种混合 CPU-GPU 调度和缓存管理系统,用以提高 MoE 推理的效率。在混合系统中减少延迟需要最大化硬件资源利用率,这取决于有效的任务到硬件映射。然而,MoE 模型的动态特性对设计最优映射策略构成了显著挑战。
为解决这一问题,HybriMoE 引入了一个全面的优化框架,通过三个关键方向提高映射效率:1. 层内混合调度;2. 层间预取;3. 迭代间缓存管理。
HybriMoE 的主要贡献如下:
- 针对 MoE 推理的混合 CPU-GPU 【调度】。一种高效的混合调度算法,通过优先执行任务和管理数据传输,动态平衡 GPU 和 CPU 之间的工作负载,优化资源利用率并最小化延迟。
- 基于影响的【预取】。一种预取机制,通过模拟预加载后续层专家的潜在影响并优先考虑预期收益较高的专家。
- 针对 MoE 的专用【缓存管理】。一种基于专家评分的缓存策略,优先保留跨层的高需求专家,以最小化缓存未命中。
- 【系统实现】。我们在 ktransformers 框架之上实现了 HybriMoE,并在三个流行的基于 MoE 的 LLMs 和各种平台上进行了评估。
与现有的混合调度方法相比,HybriMoE 在预填充和解码阶段分别实现了 1.33 倍和 1.70 倍的加速。
二、背景知识
A. 混合专家(MoE)
混合专家(MoE)模型通过仅激活一部分专家来高效处理大型语言模型(LLMs)的计算需求[2], [14]–[16]。与传统的密集网络不同,MoE 模型使用门控函数 G 来选择哪些专家处理给定的输入标记,从而减少活跃参数的数量并提高计算效率。
其中,专家的总数 N 和每次激活的专家数 K 在不同的 MoE 实现中有所不同。例如,Mixtral 模型使用 8 个专家,每次仅激活 2 个[17]。
相比之下,DeepSeek 则使用 64 个专家,每次激活 6 个。这种更大、更细粒度的专家池允许更高的专业化和更高效的知识获取[18], [19]。
此外,如图 2 所示,DeepSeek 采用共享专家策略,其策略对专家进行分类:
- 共享专家(Shared Experts):对所有标记激活,也就是说,无论输入标记的内容是什么,共享专家都会参与计算。作用是处理一些通用的、对所有输入都可能有用的信息。例如,在语言模型中,共享专家可以处理一些基本的语言结构或通用的语义信息。
- 路由专家(Routed Experts):这些专家则根据输入标记的特定内容来决定是否激活。也就是说,只有当输入标记符合某些特定条件时,路由专家才会被激活。作用是处理一些特定的、与输入标记相关的高级信息。例如,在语言模型中,路由专家可以处理特定领域的术语或特定语境下的语义信息。
这种设计,让 DeepSeek 模型减少了专家之间的冗余。共享专家处理通用信息,而路由专家处理特定信息,这样可以避免多个专家重复处理相同的信息。由于共享专家和路由专家的分工明确,模型可以避免不必要的计算重叠,从而提升整体效率。
B. 高效的 MoE 卸载
为了应对大型语言模型(LLMs)的巨大内存需求,研究者提出了参数卸载技术[20], [21]。然而,这些技术主要针对密集模型,涉及加载或预取所有参数,导致不必要的通信开销。
为了适应 MoE 模型的稀疏激活模式,研究者引入了几种专门技术,包括先进的门控、预取和量化策略[3]–[7], [22]–[26]。这些方法旨在最小化按需加载的开销,减少不必要的内存传输并提升整体性能。
C. 混合 CPU-GPU 调度
先前的卸载技术主要集中在通过将某些计算卸载到 CPU 来减少内存传输开销[9]。
例如,PowerInfer 通过在 CPU 上执行不太频繁激活的神经元来减少 GPU 内存需求,利用了激活模式的偏斜性[10]。Caraserve 则通过利用 CPU 辅助和基于排名的调度来减少 LoRA 服务中的冷启动延迟[11]。
在 MoE 模型的背景下,Fiddler 和 kTransformers 扩展了这一概念,通过在缓存未命中时将专家层计算卸载到 CPU[12]。
具体而言,当专家不在 GPU 缓存中时,CPU 执行相应的专家层而不是从内存加载。这些方法旨在通过利用 CPU-GPU 并行性来优化内存使用,并减少将大型模型加载到 GPU 上的开销。
在表 I 中,我们对 HybriMoE 与先前工作进行了定性比较。如表所示,HybriMoE 采用了 CPU-GPU 混合调度以提升预填充和解码阶段的效率。
三、研究动机
现有混合 CPU-GPU 调度在 MoE 推理中的主要瓶颈是【资源利用率低下】。为解决这一问题,我们首先分析寻找高效映射策略的主要挑战。
挑战 1:MoE 激活模式的高度不稳定性
在现有的混合 CPU-GPU 调度研究中,无论是具有高度偏斜激活的稀疏模型(如 PowerInfer)还是密集模型(或 LoRA 推理),其激活模式相对稳定。
在这些模型中,激活要么集中在少数“热点”神经元上,要么保持一致,使得调度和工作负载平衡变得容易。
相比之下,MoE 模型的激活模式不可预测,专家以动态且频繁变化的方式被激活。如图 3(a)所示,与神经元级稀疏性相比,MoE 的激活频率分布更为均匀,使得预测未来专家使用变得困难。
这种缺乏稳定性使得提前确定最优 CPU-GPU 调度策略变得困难,导致资源利用率低下和效率低下。
机会 1:针对 MoE 的缓存和预取优化
尽管 MoE 激活不稳定,但某些时间结构模式为优化提供了机会。专家激活的时间相关性为缓存优化提供了基础:评分较高的专家在未来迭代中更可能被重用,如图 3(b)所示,表明保留高评分专家在缓存中可以减少访问延迟。
此外,MoE 模型通常在相邻层之间表现出较高的激活相似性,这可以被用于预取优化。这些针对 MoE 的特定优化为减少专家激活动态性带来的挑战提供了有希望的途径。
挑战 2:MoE 结构的复杂性和动态调度
为了最小化 MoE 推理的延迟,需要最大化硬件利用率,但现有的固定映射方法往往导致负载不平衡和资源未充分利用。
由于共享专家的使用、专家尺寸和数量的变化以及运行时缓存行为的差异,MoE 模型的调度复杂性进一步增加。
此外,预填充阶段的不均匀负载分布和可变执行顺序使得有效调度更加困难,如图 3(c)所示。鉴于需要逐层调整,静态最优解决方案不切实际,使得实时调度成为一个重大挑战。如图 3(d)所示,三种现有策略在不同阶段和模型中的性能表现各异。
机会 2:针对 MoE 的特定调度规则
尽管调度问题属于 NP 难问题,但在特定于 CPU-GPU 系统的 MoE 推理背景下,几个关键观察结果可以指导高效调度规则的设计。
首先,专家传输时间相对恒定,简化了决策制定。
此外,GPU 计算时间与激活专家的数量成线性关系,而 CPU 计算由于其较大的缓存,从内存访问和计算的重叠中受益。如图 3(e)所示,CPU 上的第一个专家计算较慢,但随后的任务由于更好的缓存利用率而处理得更快。
同样,图 3(f)表明,随着工作负载的增加,GPU 时间保持稳定,而 CPU 时间随工作负载线性增长。利用这些模式,预定义的调度规则可以帮助实现 MoE 模型的高效工作负载平衡。
四、HybriMoe 设计
A. 概述
本文介绍了一种专为在内存受限设备上进行混合专家(MoE)推理而设计的 CPU-GPU 混合调度系统 HybriMoE。HybriMoE 应对了由于 MoE 模型动态激活动态和结构复杂性导致的硬件资源利用不平衡的挑战。该系统结合了三种关键技术:
- 高效的混合调度算法,该算法通过引入三个关键优先级规则简化任务到硬件的映射;
- 基于影响的预取机制;
- 基于专家评分的缓存策略,以最小化缓存未命中。
HybriMoE 的系统概述如图 4 所示。
系统首先进行预热阶段,以收集基本性能指标,如 CPU 和 GPU 的处理速度以及数据传输延迟。在推理过程中,HybriMoE 利用这些信息实施混合 CPU-GPU 调度、基于评分的缓存和基于影响的预取,确保在整个推理过程中高效的任务执行和优化的资源利用。
B. 混合调度策略
由于专家激活的动态特性和在异构资源之间平衡工作负载的需求,MoE 推理中的调度问题本质上非常复杂。
为解决这些挑战,HybriMoE 提出了一种混合调度策略,通过引入三个关键优先级规则来简化任务到硬件的映射:
- GPU 优先级:GPU 优先处理缓存中的专家,先执行负载较高的专家。
- CPU 优先级:CPU 优先处理未缓存的专家,专注于负载较低的任务以实现高效执行。此外,当 CPU 空闲时,可以按照从低到高的负载顺序处理 GPU 缓存中的专家。
- 传输优先级:CPU-GPU 传输机制优先将高负载未缓存专家从 CPU 移动到 GPU,以最小化计算延迟。
这些规则限制了设备上专家的排序,将调度问题简化为一个分配问题:
该公式未考虑数据传输的完成时间,因为专家加载必须在 GPU 计算开始之前完成。
基于这些优先级规则,HybriMoE 将所有激活的专家分为 GPU 队列和 CPU 队列。
- GPU 队列:包含 GPU 上的缓存专家,按负载降序排列。
- CPU 队列:包含 CPU 上的未缓存专家,按负载升序排列。
在实际执行之前,HybriMoE 进行模拟阶段以评估调度策略,并确定针对特定工作负载的有效任务分配计划。该模拟通过迭代填充 CPU 计算、GPU 计算和数据传输时间线来近似执行过程,使系统能够确定在平衡异构硬件资源利用率的同时最小化整体延迟的调度配置。
在模拟的每一步,系统选择完成时间最早的那条时间线,并执行相应的操作,即 CPU 或 GPU 上的计算任务,或通过 PCIE 进行数据传输。
任务选择遵循调度优先级:GPU 优先处理高负载缓存专家,CPU 专注于低负载未缓存专家,并且当其队列为空时,按照从低到高的负载顺序处理 GPU 队列中的低负载缓存专家,而 PCIE 优先处理高负载未缓存专家,以加快在 GPU 上的可用性。如果专家从 CPU 传输到 GPU,则将其插入 GPU 队列中,按负载降序排列,确保高负载任务优先在 GPU 上执行。
该迭代模拟持续进行,直到所有专家完成计算,有效地对执行过程进行建模并测试不同的调度策略。该调度过程通过图 5 中的示例进行说明。
C. 基于影响的预取
由于大型语言模型(LLMs)中的残差连接,连续层之间的隐藏状态表现出高度相似性,使得专家预取成为优化资源利用率的有效方法。
尽管一些现有工作采用了预取机制,但没有讨论在可以预取多个后续层专家时的关键权衡。具体而言,这些工作没有探讨如何战略性地决定优先预取哪些层的专家以最大化资源效率。
受第 IV-B 节中调度算法的启发,我们提出了基于影响的预取。在执行预取之前,系统进行模拟以评估预取特定专家的潜在收益。该模拟估算预加载给定专家对整体调度效率的影响,使算法能够优先考虑那些提供最高资源利用率改进的专家。这种模拟的贪婪性质确保了最小的计算开销,使其适用于实时推理场景。
D. 基于评分的缓存
传统上,最小使用频率(LFU)和最近最少使用(LRU)算法已被用于 MoE 缓存管理。然而,这些策略未能考虑 MoE 模型中观察到的特定激活动态,其中专家评分对未来激活提供了有价值的预测信号。
如第 III 节所述,当前激活的专家在未来可能被重用,此外,评分较高但未被激活的专家在后续迭代中被选中的概率也较高。为了利用这一见解,我们提出了基于评分的缓存,一种专为 MoE 模型设计的新型缓存替换策略。
五、系统实现
我们在 kTransformers 框架之上实现了 HybriMoE 系统,并利用 llama.cpp
内核进行优化。kTransformers 提供了一个灵活的基础设施,支持内核函数注入(kernel injection),从而无缝支持 CPU-GPU 混合执行。
为了优化系统工作流程,我们实现了 CPU、GPU 和 PCIe 数据传输的并行执行,并利用细粒度的 CUDA 流调度(CUDA stream scheduling)来高效管理资源。
此外,我们修改了 C++ 内核函数,直接处理专家计算任务的分配,最小化了冗余的 Python 开销并提升了执行效率。在量化方面,我们采用了来自 llama.cpp
的最新 4 位量化内核 Marlin 量化,显著提升了计算效率并减少了内存使用。
六、实验结果
A. 实验设置
- 平台:我们在 NVIDIA RTX A6000 上评估 HybriMoE。对于 CPU,我们使用 Intel Xeon Gold 5220R 处理器,并限制其使用 10 个核心,以模拟现实世界中资源有限的边缘部署场景。为了评估系统在不同硬件配置下的性能和可扩展性,我们调整了 GPU 专家缓存比率的上限。
- 模型:我们使用三个具有不同特性的广泛采用的 MoE 模型进行评估:Mixtral-8x7B-Instruct [17](Mixtral)、DeepSeek-V2-Lite-Chat [18](DeepSeek) 和 Qwen257B-A14B-Instruct [16](Qwen2)。
如表 II 所示,这些模型在专家数量和大小以及架构配置上有所不同。Mixtral 代表具有较少较大专家的 MoE 模型,而 Qwen2 和 DeepSeek 则代表具有较多较小专家的模型。值得注意的是,Qwen2 和 DeepSeek 还采用了共享专家,这些专家对所有输入标记激活。
- 基线:我们评估 HybriMoE 与三个代表性的开源 MoE 推理框架:llama.cpp [27]、AdapMoE [5] 和 kTransformers [13],每个框架代表不同的调度方法。llama.cpp 是一种 CPU-GPU 混合调度基线,它将模型层静态映射到 CPU 或 GPU。AdapMoE 是以 GPU 为中心的 MoE 调度的最新技术,通过自适应预取和缓存最小化按需加载开销。kTransformers 是 CPU-GPU 混合 MoE 调度的最新技术,将高激活频率的专家(例如共享专家)映射到 GPU 以最大化效率。
- 指标:自回归解码包括两个阶段:预填充阶段和解码阶段。我们分别评估 HybriMoE 在这两个阶段的性能。对于预填充阶段,我们使用“首次生成令牌的时间”(Time To First Token, TTFT),即从接收输入提示到生成第一个令牌的延迟。对于解码阶段,我们使用“令牌间的时间”(Time Between Tokens, TBT),即生成每个后续令牌所需的时间。这些指标清晰地评估了初始延迟和推理过程中的持续效率。
- 数据集:对于预填充阶段,我们通过从多个数据集(包括 MT Bench [28]、Vicuna Bench [29] 和 ChatGPT Prompts [30])中采样不同长度的痕迹来评估不同输入长度下的性能。相比之下,对于解码阶段,由于性能对输入长度不敏感,我们仅使用 ChatGPT Prompts 数据集来评估 TBT 指标。
B. 端到端性能
B.1 预填充阶段
我们通过比较 HybriMoE 与三个基线(llama.cpp、AdapMoE 和 kTransformers)来评估预填充阶段的性能。图 7 展示了在不同输入长度(约 32、128、512 和 1024 个标记)和不同 GPU 专家缓存比率(25%、50% 和 75%)下的 TTFT 结果。
HybriMoE 在所有输入长度和缓存配置下均显示出比基线一致的改进。llama.cpp 显示出显著更高的预填充延迟,这是由于其简单的静态映射策略,该策略将整个专家层分配给 CPU。
这种方法未能有效平衡工作负载,尤其是在预填充阶段计算需求较高时,导致了显著的延迟。与 kTransformers 相比,HybriMoE 在不同输入长度和缓存配置下平均加速了 1.33 倍。
这种改进得益于 HybriMoE 的混合调度和基于影响的预取机制,这些机制动态平衡工作负载并减少缓存未命中,从而实现更高效的资源利用。
B.2 解码阶段
图 8 展示了三个 MoE 模型的解码性能结果。HybriMoE 在所有缓存比率和模型下均显示出最高的吞吐量,证明了其在解码阶段动态平衡工作负载和充分利用硬件资源的能力。
与 kTransformers 相比,HybriMoE 实现了平均 1.70 倍的吞吐量提升。此外,值得注意的是,与预填充阶段的结果相比,llama.cpp
在这一阶段表现出相对较强的性能。这主要是由于解码阶段每个专家的计算负载较小,使得基于 CPU 的计算能够更快地进行。
此外,与预填充阶段相比,不均匀专家映射的影响较小,整体资源开销保持较低,这使得 llama.cpp
的静态调度策略在这一特定背景下具有优势。
C. 消融研究
我们进一步探讨了方法的各个组成部分对结果的贡献。在缓存比率为 25% 的情况下,对 Qwen2 的两个阶段进行了性能测量,基线为 ktransformers 框架。结果如表 III 所示。
可以看出:
- 混合调度策略对性能提升有显著贡献,尤其在 Decode 阶段效果更明显。
- 预取机制对性能提升有一定贡献,但在单独应用时效果相对较小。
- 缓存管理策略在 Decode 阶段对性能提升有显著贡献,但在 Prefill 阶段未单独列出,可能是因为其效果不如调度和预取明显。
- 综合应用所有优化技术可以实现最大的性能提升,尤其是在 Decode 阶段。
D. 讨论
基于评分的缓存管理分析
图 9 比较了 HybriMoE 的减去最近评分(Minus Recent Score, MRS)策略与传统的最近最少使用(LRU)策略在三个模型下的缓存命中率,缓存专家百分比各不相同。
在 25% 的缓存容量下,MRS 的性能比 LRU 高出 6% 到 8%,其中 Mixtral 从 30.2% 提升到 36.2%,DeepSeek 从 47.7% 提升到 52.7%,Qwen2 从 45.0% 提升到 52.8%。
随着缓存容量增加到 75%,差距缩小(例如,Mixtral 为 83.3% 对 80.6%),因为更高的容量减少了专家竞争,从而降低了缓存策略的相对影响。这些结果突出了 MRS 的有效性,尤其是在缓存设置有限的情况下。
加群请在 NeuralTalk 公众号后台回复:我要加群不加不行
七、结论
本文介绍了 HybriMoE,一种专为解决混合专家(MoE)推理中的动态专家激活和工作负载不平衡挑战而设计的混合 CPU-GPU 调度和缓存管理系统。
通过结合动态层内调度、基于影响的预取和基于评分的缓存,HybriMoE 实现了高效的资源利用和延迟降低。在各种 MoE 模型上的实验表明,与最新技术方法相比,HybriMoE 在预填充延迟和解码延迟方面分别平均加速了 1.33 倍和 1.70 倍。
这些结果突出了 HybriMoE 在优化混合 MoE 推理方面的有效性及其在资源受限设备上可扩展部署的潜力。
加群请在 NeuralTalk 公众号后台回复:我要加群不加不行
参考文献
[1] N. Shazeer, A. Mirhoseini, K. Maziarz, A. Davis, Q. Le, G. Hinton, and J. Dean, “Outrageously large neural networks: The sparsely-gated mixture-of-experts layer,” arXiv preprint arXiv:1701.06538, 2017.
[2] S. Masoudnia and R. Ebrahimpour, “Mixture of experts: a literature survey,” Artificial Intelligence Review, vol. 42, pp. 275–293, 2014.
[3] A. Eliseev and D. Mazur, “Fast inference of mixture-of-experts language models with offloading,” arXiv preprint arXiv:2312.17238, 2023.
[4] R. Hwang, J. Wei, S. Cao, C. Hwang, X. Tang, T. Cao, M. Yang, and M. Rhu, “Pre-gated moe: An algorithm-system co-design for fast and scalable mixture-of-expert inference,” arXiv preprint arXiv:2308.12066, 2023.
[5] S. Zhong, L. Liang, Y. Wang, R. Wang, R. Huang, and M. Li, “Adapmoe: Adaptive sensitivity-based expert gating and management for efficient moe inference,” arXiv preprint arXiv:2408.10284, 2024.
[6] X. Song, Z. Zhong, and R. Chen, “Promoe: Fast moe-based llm serving using proactive caching,” arXiv preprint arXiv:2410.22134, 2024.
[7] P. Tang, J. Liu, X. Hou, Y. Pu, J. Wang, P.-A. Heng, C. Li, and M. Guo, “Hobbit: A mixed precision expert offloading system for fast moe inference,” arXiv preprint arXiv:2411.01433, 2024.
[8] J. You, J. Wu, X. Jin, and M. Chowdhury, “Ship compute or ship data? why not both?” in 18th USENIX Symposium on Networked Systems Design and Implementation (NSDI 21), 2021, pp. 633–651.
[9] D. Park and B. Egger, “Improving throughput-oriented llm inference with cpu computations,” in Proceedings of the 2024 International Conference on Parallel Architectures and Compilation Techniques, 2024, pp. 233–245.
[10] Y. Song, Z. Mi, H. Xie, and H. Chen, “Powerinfer: Fast large language model serving with a consumer-grade gpu,” arXiv preprint arXiv:2312.12456, 2023.
[11] S. Li, H. Lu, T. Wu, M. Yu, Q. Weng, X. Chen, Y. Shan, B. Yuan, and W. Wang, “Caraserve: Cpu-assisted and rank-aware lora serving for generative llm inference,” arXiv preprint arXiv:2401.11240, 2024.
[12] K. Kamahori, Y. Gu, K. Zhu, and B. Kasikci, “Fiddler: Cpu-gpu orchestration for fast inference of mixture-of-experts models,” arXiv preprint arXiv:2402.07033, 2024.
[13] KVCache-AI, “Ktransformers: A flexible framework for experiencing cutting-edge llm inference optimizations,” 2024, https://github.com/kvcache-ai...
[14] W. Fedus, B. Zoph, and N. Shazeer, “Switch transformers: Scaling to trillion parameter models with simple and efficient sparsity,” Journal of Machine Learning Research, vol. 23, no. 120, pp. 1–39, 2022.
[15] M. R. Costa-juss'a, J. Cross, O. C¸ elebi, M. Elbayad, K. Heafield, K. Heffernan, E. Kalbassi, J. Lam, D. Licht, J. Maillard et al., “No language left behind: Scaling human-centered machine translation,” arXiv preprint arXiv:2207.04672, 2022.
[16] A. Yang, B. Yang, B. Hui, B. Zheng, B. Yu, C. Zhou, C. Li, C. Li, D. Liu, F. Huang et al., “Qwen2 technical report,” arXiv preprint arXiv:2407.10671, 2024.
[17] A. Q. Jiang, A. Sablayrolles, A. Roux, A. Mensch, B. Savary, C. Bamford, D. S. Chaplot, D. d. l. Casas, E. B. Hanna, F. Bressand et al., “Mixtral of experts,” arXiv preprint arXiv:2401.04088, 2024.
[18] A. Liu, B. Feng, B. Wang, B. Wang, B. Liu, C. Zhao, C. Dengr, C. Ruan, D. Dai, D. Guo et al., “Deepseek-v2: A strong, economical, and efficient mixture-of-experts language model,” arXiv preprint arXiv:2405.04434, 2024.
[19] D. Dai, C. Deng, C. Zhao, R. Xu, H. Gao, D. Chen, J. Li, W. Zeng, X. Yu, Y. Wu et al., “Deepseekmoe: Towards ultimate expert specialization in mixture-of-experts language models,” arXiv preprint arXiv:2401.06066, 2024.
[20] R. Y. Aminabadi, S. Rajbhandari, A. A. Awan, C. Li, D. Li, E. Zheng, O. Ruwase, S. Smith, M. Zhang, J. Rasley et al., “Deepspeed-inference: enabling efficient inference of transformer models at unprecedented scale,” in SC22: International Conference for High Performance Computing, Networking, Storage and Analysis. IEEE, 2022, pp. 1–15.
[21] Y. Sheng, L. Zheng, B. Yuan, Z. Li, M. Ryabinin, B. Chen, P. Liang, C. R´e, I. Stoica, and C. Zhang, “Flexgen: High-throughput generative inference of large language models with a single gpu,” in International Conference on Machine Learning PMLR, 2023, pp. 31 094–31 116.
[22] J. Li, Q. Su, Y. Yang, Y. Jiang, C. Wang, and H. Xu, “Adaptive gating in mixture-of-experts based language models,” arXiv preprint arXiv:2310.07188, 2023.
[23] Y. Wei, J. Du, J. Jiang, X. Shi, X. Zhang, D. Huang, N. Xiao, and Y. Lu, “Aptmoe: Affinity-aware pipeline tuning for moe models on bandwidth-constrained gpu nodes,” in 2024 SC24: International Conference for High Performance Computing, Networking, Storage and Analysis SC. IEEE Computer Society, 2024, pp. 1436–1449.
[24] P. Li, X. Jin, Y. Cheng, and T. Chen, “Examining post-training quantization for mixture-of-experts: A benchmark,” arXiv preprint arXiv:2406.08155, 2024.
[25] L. Xue, Y. Fu, Z. Lu, L. Mai, and M. Marina, “Moe-infinity: Activation-aware expert offloading for efficient moe serving,” arXiv preprint arXiv:2401.14361, 2024.
[26] X. He, S. Zhang, Y. Wang, H. Yin, Z. Zeng, S. Shi, Z. Tang, X. Chu, I. Tsang, and O. Y. Soon, “Expertflow: Optimized expert activation and token allocation for efficient mixture-of-experts inference,” 2024. [Online]. Available: https://arxiv.org/abs/2410.17954
[27] G. Gerganov, “ggerganov/llama.cpp: Port of facebook’s llama model in c/c++,” 2023. [Online]. Available: https://github.com/ggerganov/... [28] L. Zheng, W.-L. Chiang, Y. Sheng, S. Zhuang, Z. Wu, Y. Zhuang, Z. Lin, Z. Li, D. Li, E. Xing et al., “Judging llm-as-a-judge with mt-bench and chatbot arena,” Advances in Neural Information Processing Systems, vol. 36, 2024.
[29] L. Zheng, W.-L. Chiang, Y. Sheng, S. Zhuang, Z. Wu, Y. Zhuang, Z. Lin, Z. Li, D. Li, E. P. Xing, H. Zhang, J. E. Gonzalez, and I. Stoica, “Judging llm-as-a-judge with mt-bench and chatbot arena,” 2023. [Online]. Available: https://arxiv.org/abs/2306.05685
[30] MohamedRashad, “Chatgpt-prompts,” 2023. [Online]. Available: https://huggingface.co/datase...
END
作者:HybriMoE
来源:NeuralTalk
推荐阅读
- SAM突破多模态分割 | SAM2+语义记忆模块,实现跨模态语义理解登顶DELIVER
- CMU与Meta提出LithOS:节省 GPU51% 容量、26%能耗,迈向高效机器学习操作系统
- 单机H200最快DeepSeek V3和R1推理系统优化秘籍
- SGLang 源码学习笔记:Cache、Req与Scheduler
- 基于 LLM 的 RTL 代码生成,VerilogEval 上功能正确性 SOTA
欢迎大家点赞留言,更多 Arm 技术文章动态请关注极术社区嵌入式AI专栏欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。